Как посчитать частоты слов в файле в Python
У меня есть файл .txt в следующем формате,
C
V
EH
A
IRQ
C
C
H
IRG
V
Хотя, очевидно, это намного больше, чем это, по сути это так. В основном я пытаюсь суммировать, сколько раз каждая отдельная строка находится в файле (каждая буква / строка находится на отдельной строке, так что технически файл является C \ nV \ nEH \ n и т. д. Однако, когда я пытаюсь преобразовать эти файлы в список, а затем использую функцию count, он разделяет буквы так, что такие строки, как «IRQ», являются [«\ n» I »; 'R', 'Q', '\ n'], поэтому, когда я считаю это, я получаю частоты каждой отдельной буквы, а не строк.
Вот код, который я написал до сих пор,
def countf():
fh = open("C:/x.txt","r")
fh2 = open("C:/y.txt","w")
s = []
for line in fh:
s += line
for x in s:
fh2.write("{:<s} - {:<d}".format(x,s.count(x))
В итоге я хочу получить выходной файл, который выглядит примерно так
C 10
V 32
EH 7
A 1
IRQ 9
H 8