给定一个文件(文件内容为纯英文)路径,统计文件内高频词。用函数实现。 说明:文件的字符编码为utf-8
时间: 2024-02-16 08:02:56 浏览: 77
可以使用 Python 的内置模块 `collections` 来进行词频统计。下面是一份示例代码:
```python
import collections
def count_words(file_path, top_n=10):
# 打开文件并读取内容
with open(file_path, 'r', encoding='utf-8') as f:
text = f.read()
# 分词并统计词频
words = text.split()
counter = collections.Counter(words)
# 获取词频最高的前 top_n 个词
return counter.most_common(top_n)
```
代码说明:
- `count_words` 函数接受一个文件路径参数 `file_path` 和一个可选的参数 `top_n`,用于指定需要获取的词频最高的前几个词,默认为 10。
- 函数首先打开文件并读取文件内容,然后使用 `split` 方法将内容按照空格划分为单词列表 `words`。
- 使用 `collections` 模块中的 `Counter` 类统计单词的词频,生成一个字典 `counter`。
- 使用 `most_common` 方法获取词频最高的前 `top_n` 个词,并将它们作为元组列表返回。
使用示例:
```python
result = count_words('example.txt', top_n=20)
for word, count in result:
print(word, count)
```
其中 `example.txt` 是待处理的文本文件路径,`top_n` 参数为 20。该代码将输出文本文件中出现次数最多的前 20 个单词及其出现次数。
阅读全文