У меня есть программа, которая будет считать буквы в определенном текстовом файле (в моем примере, «Words.txt»). Однако, когда я пытаюсь изменить код, чтобы принимать ввод пользователя вместо поиска определенного файла, я получаю следующее: - Объект 'str' не имеет атрибута 'readlines'Пытается подсчитать частоту письма в текстовом файле в Python
Я уверен, что это что-то действительно похожее на порог что я делаю, но я не понимаю, почему. Мой код ниже:
import string
#fname=raw_input("Enter file name: ")
fname=open('words.txt', 'r')
#if len(fname) < 1 : fname = "words.txt"
file_list = fname.readlines()
freqs = dict()
for line in file_list:
line = filter(lambda x: x in string.letters, line.lower())
for char in line:
if char in freqs:
freqs[char] += 1
else:
freqs[char] = 1
lst = list()
for key, val in freqs.items():
lst.append((val, key))
lst.sort(reverse=True)
for key, val in lst[:] :
print key, val
Вы хотите вызвать readlines() для пользователя inout –
'fname' не является хорошим именем для файлового объекта. Не путайте файлы с именами файлов. – Kevin