Я читаю в файл с помощьюПропустить обратно в файл в Python
for line in fin:
process(line)
Однако, я иногда, как пропустить назад некоторые строки в файл и просто вести оттуда. Я не буду знать количество строк заранее, так как это зависит от вычислений в коде. Поэтому я хотел бы, чтобы это было что-то вроде
for line in fin:
x = process(line)
if (x == 23):
skip back xxx lines and continue
Как вы можете это сделать в python?
Это что-то, что можно сделать с помощью mmap, например? Файл большой, поэтому я не хочу просто хранить все это в памяти.
Насколько велика? Если вы разработали формат файла, подумайте об изменении его, чтобы он легко анализировался в одном прокрутке вперед. –
Просто замечание на ваш код здесь: 'для строки в fin.readlines()' перебирает список строк в вашей памяти. 'for line in fin ', однако, будет читать строку из файла, затем читать другую и т. д. – sjakobi
@simon О, дорогая. Благодаря! –