← Все вопросы
Как прочитать файл построчно?
12
Нужно обработать текстовый файл по строкам. Нашёл f.read(), но он читает всё одной строкой. Как пройтись именно по строкам и не словить проблем с кодировкой?
2 ответа
16
✓ Принятый ответ — помог автору
Файл итерируется по строкам сам:
with open('data.txt', encoding='utf-8') as f:
for line in f:
line = line.rstrip('\n')
print(line)
with сам закроет файл. encoding='utf-8' спасает от кракозябр. rstrip('\n') убирает перенос в конце.
Ирина Ионцева про encoding=utf-8 — постоянно забываю, спасибо · 4 месяца назад
8
Можно lines = f.readlines() и потом по списку. Но учти — readlines грузит весь файл в память сразу; для больших файлов лучше for line in f.
Джуффин Халли да, на большом логе readlines меня как-то положил по памяти · 5 месяцев назад
Ваш ответ
Войдите, чтобы ответить на вопрос.