#python #python-3.x
#python #python-3.x
Вопрос:
- Всякий раз, когда в строке появляется слово «Run», затем выведите «Vader».
- Если слово «Alert» повторяется последовательно перед «Run», затем выведите «skip», равное количеству повторений. раз.
Пример ввода
Внимание и будьте начеку
Бегите, спасая свою жизнь
Внимание и будьте начеку
Внимание и будьте начеку
Бегите, спасая свою жизнь
Внимание и будьте начеку
Внимание и будьте начеку
Внимание и будьте начеку
Бегите, спасая свою жизнь
Внимание и будьте начеку
Внимание и будьте начеку
Бегите, спасая свою жизнь
Мой код до сих пор
sys.stdout = open("filepath/output.csv", "w")
with open("filepath/input.txt", "r") as f:
for line in f:
if "Run" in line:
print("Vader")
sys.stdout.close()
текущий вывод
Вейдер
Вейдер
Вейдер
Вейдер
Требуемый вывод
Вейдер
пропустить
Вейдер
пропустить
пропустить
Вейдер
пропустить
Вейдер
Как вы можете видеть, я выполнил первое требование. Не могу понять вторую часть. Может кто-нибудь помочь с пунктом # 2? Или укажите мне правильное направление? Спасибо.
Ответ №1:
Перебирайте строки и всякий раз, когда появляется «Alert», увеличивайте счетчик. Если счетчик равен> 1, выведите «пропустить». Если предупреждение отсутствует, сбросьте счетчик на 0.
counter = 0
for line in f:
if "Run" in line:
print("Vader")
counter = 0
elif "Alert" in line:
if counter > 1:
prit("skip")
counter = 1