← Все вопросы

Как прочитать файл построчно?

Задан 5 месяцев назад507 просмотров2 ответа
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 месяцев назад

Ваш ответ

Войдите, чтобы ответить на вопрос.
Поддержать проект