Python哈姆雷特词频统计
时间: 2023-11-19 12:57:40 浏览: 144
Python之词频统计
以下是Python哈姆雷特词频统计的代码和解释:
```python
import string
# 读取文件内容
with open('hamlet.txt', 'r') as f:
content = f.read()
# 去除标点符号和换行符
content = content.translate(str.maketrans('', '', string.punctuation + '\n'))
# 将所有单词转换为小写
content = content.lower()
# 将文本内容按空格分割成单词列表
words = content.split()
# 统计每个单词出现的次数
word_count = {}
for word in words:
if word in word_count:
word_count[word] += 1
else:
word_count[word] = 1
# 按照单词出现次数从大到小排序
sorted_word_count = sorted(word_count.items(), key=lambda x: x[1], reverse=True)
# 输出前10个出现次数最多的单词
for i in range(10):
print(sorted_word_count[i][0], sorted_word_count[i][1])
```
代码解释:
1. 首先使用`with open()`语句读取文件内容,并将其存储在`content`变量中。
2. 使用`translate()`方法去除标点符号和换行符。
3. 使用`lower()`方法将所有单词转换为小写。
4. 使用`split()`方法将文本内容按空格分割成单词列表。
5. 使用字典`word_count`统计每个单词出现的次数。
6. 使用`sorted()`函数按照单词出现次数从大到小排序,并将结果存储在`sorted_word_count`变量中。
7. 使用`for`循环输出前10个出现次数最多的单词及其出现次数。
阅读全文