У меня есть текстовый файл, который я хочу проанализировать. Я пытаюсь найти каждую строку, содержащую определенные символы (например: «@»), а затем распечатать линию, расположенную по 3 строки перед ней (например: если строка 5 содержит «@», я хотел бы напечатать строку 2) это то, что я до сих пор:Печать конкретных строк txt файл python
file = open('new_file.txt', 'r')
a = list()
x = 0
for line in file:
x = x + 1
if '@' in line:
a.append(x)
continue
x = 0
for index, item in enumerate(a):
for line in file:
x = x + 1
d = a[index]
if x == d - 3:
print line
continue
он не будет работать (он ничего не печатает, когда я кормить его файл, содержащий строки, содержащие «@»), любые идеи?
Ваша программа не является синтаксически правильной (проблемы в намерении). Не могли бы вы исправить это, пожалуйста. Затем, пожалуйста, укажите «не будет работать». (И, конечно, вы должны избавиться от «вложенного» чтения того же файлового дескриптора ...) – flaschbier
@flaschbier done –