← Все вопросы
Как посчитать количество строк и слов в текстовом файле?
9
Нужно по файлу узнать, сколько в нём строк и сколько слов всего (как wc в линуксе, только на питоне). Как это аккуратно сделать?
2 ответа
15
Идёшь по строкам, считаешь их и заодно суммируешь количество слов через split():
lines = 0
words = 0
with open('text.txt', encoding='utf-8') as f:
for line in f:
lines += 1
words += len(line.split())
print(lines, words)
line.split() без аргумента бьёт по любым пробельным символам и не плодит пустых элементов, так что слова считаются корректно даже при двойных пробелах.
7
Строки можно совсем коротко:
with open('text.txt', encoding='utf-8') as f:
lines = sum(1 for _ in f)
Не грузит весь файл в память — считает по одной.
Ваш ответ
Войдите, чтобы ответить на вопрос.