、编写程序,输入多行英文句子,对每个单词计数,并保存到字典类型map1中。查看map1的内容。按照单词出现的次数从高到低排序,并查看排序后的结果。用python写
时间: 2024-09-24 11:14:43 浏览: 35
WordCounterMobyDick:该程序对txt文件中的每个唯一单词以及每个单词的实例数进行计数
你可以使用Python的内置模块`collections`中的`Counter`类来实现这个功能。下面是一个示例程序:
```python
from collections import Counter
def word_counter():
map1 = {} # 创建空字典用于存储单词及其计数
while True:
sentence = input("请输入英文句子(按Enter结束):") # 输入多行句子
if not sentence:
break
words = sentence.split() # 分割句子成单词列表
word_count = Counter(words) # 计算每个单词的出现次数
map1.update(word_count) # 更新字典,累加计数
print("\n地图1(字典)的内容:")
print(map1)
# 按照单词出现次数降序排序
sorted_map = dict(sorted(map1.items(), key=lambda item: item[1], reverse=True))
print("\n单词按照出现次数从高到低排序的结果:")
for word, count in sorted_map.items():
print(f"{word}: {count}")
word_counter()
```
在这个程序中,用户可以持续输入英文句子,直到输入空行为止。每输入一行,我们就分割成单词并计算它们的出现次数,然后更新字典`map1`。最后,我们按照字典项的值(即单词出现次数)对字典进行排序并显示结果。
阅读全文