Python统计一个txt的英文文档,里面包含哪些单词,各个单词出现的频率如何。
时间: 2023-06-13 18:08:05 浏览: 137
python统计文本字符串里单词出现频率的方法
5星 · 资源好评率100%
可以用Python中的文件读取和字符串处理模块来实现文本的读取和单词的统计。
以下是一个简单的程序示例:
```python
import string
# 打开文件并读取内容
with open('example.txt', 'r') as f:
content = f.read()
# 去除标点符号并转换为小写
content = content.translate(str.maketrans('', '', string.punctuation)).lower()
# 将文本分割为单词列表
words = content.split()
# 统计单词出现的频率
word_freq = {}
for word in words:
if word in word_freq:
word_freq[word] += 1
else:
word_freq[word] = 1
# 输出结果
for word, freq in word_freq.items():
print(word, freq)
```
解释一下上面的代码:
1. 使用 `with open()` 语句打开文件并读取文件内容到变量 `content` 中。
2. 使用 `str.translate()` 方法去除标点符号,并使用 `str.lower()` 方法转换为小写字母。
3. 使用 `str.split()` 方法将文本分割为单词列表。
4. 遍历单词列表,统计每个单词出现的频率,保存到字典 `word_freq` 中。
5. 遍历 `word_freq` 字典,输出每个单词和对应的频率。
注意,上述程序只是一个简单的示例,对于一些特殊情况(如单词中包含连字符、缩写词等),还需要进行特殊处理。
阅读全文