【发布时间】:2018-03-15 03:41:45
【问题描述】:
编写一个名为 letter_count(filename) 的函数,它接受一个包含文件名的参数。您的函数应该读取文本文件的内容,并计算每个英文字母在文件中出现的次数。该函数应将 (character : count) 对的列表打印到标准输出。
您可以根据需要定义其他“帮助”函数。任何不是英文字母的字符都应该被忽略。应该忽略大小写(因此“a”和“A”都算作字母“a”)。用小写字母报告输出。字母应按标准字母顺序排序,并应按字母、空格、冒号、空格、频率的格式打印。
我正在努力获得与图像相同的结果,我应该只获得字母并忽略其他值。但是,我只能忽略数字。以下是我最多的地方:
def letter_count(filename):
f = open(filename, 'r')
content = f.read().lower()
data = content.split()
mydicts = {}
for letter in data:
for i in letter:
count = mydicts.get(i, 0)
mydicts[i] = count + 1
mydicts_list = mydicts.keys()
for letter in sorted(mydicts_list):
print(letter, ':', mydicts[letter])
【问题讨论】:
-
你的问题和排序的部分有关系吗?
-
从问题中请求,但我已经解决了这个特定的部分。
标签: python