基于文本文件“file9_1.txt”中存储的英文文档(以空格或标点符号分隔),请编写程序计算这篇文档中出现了哪些单词?各出现了多少次?按出现次数降序排序后显示
时间: 2024-02-16 18:04:14 浏览: 114
统计一篇文档中每个单词出现的次数,频率
4星 · 用户满意度95%
好的,我可以帮你编写这个程序。首先,我们需要读取文本文件并将其分解成单词。我们可以使用Python内置的字符串方法和正则表达式来完成这个任务。以下是程序的代码:
```python
import re
from collections import Counter
# 读取文件
with open("file9_1.txt", "r") as file:
text = file.read()
# 将文本分解成单词
words = re.findall(r'\b\w+\b', text.lower())
# 统计单词出现次数
word_counts = Counter(words)
# 按出现次数降序排序并输出结果
for word, count in sorted(word_counts.items(), key=lambda x: x[1], reverse=True):
print(word, count)
```
在这个程序中,我们首先使用`open`函数打开文件并读取其内容。然后,我们使用`re.findall`函数和正则表达式`\b\w+\b`将文本分解成单词,并将其转换为小写字母。接下来,我们使用`collections.Counter`函数统计每个单词出现的次数。最后,我们使用`sorted`函数按出现次数降序排序,并输出结果。
希望这个程序可以帮助你回答你的问题!
阅读全文