思路:
1.通过jieba库获取所有词语列表;
2.计算列表里出现词语及其对应的词频,存储在字典中;
3.对字典里的词语按照频次进行排列;
4.输出频次前十的词语及其频次;
jieba库的安装
需要cmd进入命令提示符窗口,输入pip install jieba安装即可
源代码如下
import jieba # 调用jieba库
f_name = '斗破苍穹.txt' # 文件地址
with open(f_name, encoding='utf-8')as a: # 将文件放入a中
b = a.read() # 对文件进行读操作
words = jieba.lcut(b) # words是直接生成一个装有词的列表,即list
count = {
} # 定义一个字典
for word in words: # 枚举在文章中出现的词汇
if len(word) < 2: # 排除字长小于2的词
continue
else: # 统计词频
count[word] = count.get(word, 0)+1
list1 = list(count.items()) # 将字典中的键值对转化为列表
list1.sort(key=lambda x: x[1], reverse=True) # 对列表按照词频从大到小排列
for i in range(10):
word, number = list1[i] # 将列表中的word与number提取出来
print("关键字:{:-<10}频次:{:+>8}".format(word, number)) # 输出word与number值、