请用python代码编写对文件hlm.txt文本文件进行分词,打印出出现频率最高的前10个词现词频,并对文件hlm.txt生成词云,图片文件名为hlm.png
时间: 2024-02-21 11:00:12 浏览: 210
基于Python实现的词云生成代码,从txt文件中读取词语,生成指定图片的词云图
好的,我可以为您完成这个任务。需要先安装一些必要的库,包括jieba、wordcloud和numpy。请确保您已经安装了这些库,如果没有安装,可以使用以下命令进行安装:
```
pip install jieba wordcloud numpy
```
然后,我们可以使用以下代码读取文件并进行分词:
```python
import jieba
from collections import Counter
# 读取文件
with open('hlm.txt', 'r', encoding='utf-8') as f:
text = f.read()
# 分词
words = jieba.cut(text)
# 统计词频并取出前10个
counter = Counter(words)
top_words = counter.most_common(10)
# 打印出现频率最高的前10个词及词频
for word, count in top_words:
print(word, count)
```
接下来,我们可以使用以下代码生成词云并保存为图片文件:
```python
from wordcloud import WordCloud
import numpy as np
from PIL import Image
# 读取图片
mask = np.array(Image.open('mask.png'))
# 生成词云
wordcloud = WordCloud(background_color='white', mask=mask, font_path='msyh.ttc')
wordcloud.generate(text)
# 保存图片
wordcloud.to_file('hlm.png')
```
请注意,这里的 `mask.png` 和 `msyh.ttc` 文件需要您自己准备。`mask.png` 是用于生成词云的形状图片,可以使用任何您喜欢的形状;`msyh.ttc` 是用于生成中文词云的字体文件,可以使用您电脑上任何支持中文的字体。
阅读全文