txt = input("请输入一段英文:") txt = txt.lower() counts = {} for alpha in txt: counts[alpha] = counts.get(alpha,0) + 1 items = list(counts.items()) items.sort(key = lambda x:x[1],reverse = True) for i in range(26): alpha,count = items[i] print(alpha,count)
时间: 2024-03-08 08:45:30 浏览: 52
Python 合并多个TXT文件并统计词频的实现
这段代码的作用是统计用户输入的一段英文中每个字母出现的频率,并输出按照频率从高到低排序的前26个字母及其出现次数。
具体实现过程如下:
1. 通过`input()`函数获取用户输入的一段英文,并将其中所有字母转换为小写,方便后续统计。
2. 创建一个空字典`counts`,用于存储每个字母出现的次数。
3. 遍历输入的英文字符串,对于每个字母,如果在`counts`字典中已经存在,则将其计数加1,否则将其添加到`counts`字典中,并将计数初始化为1。
4. 将`counts`字典中的键值对转换为一个元素为`(key, value)`的元组列表,并按照元素的第二个值(即出现次数)从大到小排序。
5. 遍历排序后的元组列表的前26个元素,分别输出字母和其出现次数。
需要注意的是,这段代码对于非英文字母的字符不做处理,不会统计其出现次数,也不会输出其信息。
阅读全文