Вы можете использовать islice()
в itertools
модуль для чтения "срезов" строк из файла с помощью функции generator:
import itertools
def lines_of_interest(filename):
with open(filename, 'r') as inf:
for line in itertools.islice(inf, 11): # yield the first 11 lines
yield line
while True:
# out of next 11 lines, skip 9 and keep last 2
lines = list(itertools.islice(inf, 9, 11))
for line in lines:
yield line
if not lines: # end-of-file?
break
Пример использования:
# create a test file
with open('data.dat', 'w') as outf:
for i in xrange(1, 110):
outf.write('line #%d\n' % i)
for line in lines_of_interest('data.dat'):
# process line...
print line,
хорошо для вас. Что вы пробовали? Переполнение стека не является кодовым письмом. Отправьте свою попытку, образец ввода, ожидаемый результат, фактический вывод и полный текст любых трассировок или ошибок. – MattDMo
Возможный дубликат [Незначительная переменная цикла в Python] (http://stackoverflow.com/questions/29434734/not-recognizing-loop-variable-in-python) – TigerhawkT3
@ TigerhawkT3 Как это дубликат этого вопроса? – Bakuriu