利用jieba库进行分词处理
jieba库用法只需要记住lcut用法即可。其他不常用
1.安装jieba库
在windows中cmd窗口下执行pip install jieba
C:\WINDOWS\system32>pip install jieba
Collecting jieba
Downloading https://files.pythonhosted.org/packages/71/46/c6f9179f73b818d5827202ad1c4a94e371a29473b7f043b736b4dab6b8cd/jieba-0.39.zip (7.3MB)
100% |████████████████████████████████| 7.3MB 1.3MB/s
Installing collected packages: jieba
Running setup.py install for jieba ... done
Successfully installed jieba-0.39
You are using pip version 19.0.3, however version 19.1.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
显示Successfully installed jieba-0.39表示安装成功
2.对红楼梦出场次数进行统计
import jieba
with open ("E:/untitled/test/hongloumeng.txt",encoding="utf-8") as file:
f = file.read()
del_list ={"什么","一个","我们","那里","如今","你们","说道","起来","姑娘","这里","出来","他们","众人","自己","039","&#","一面","只见","两个","怎么","没有","不是","不知",
"听见","这个","这样","进来","咱们","就是","东西","告诉","回来","袭人","只是","大家","只得","丫头","这些","不敢","出去","所以","不过","不好","一时","鸳鸯","姐姐",
"过来","不能","心里","银子","如此","答应","今日","几个","二人","还有","只管","一回","说话","这么","那边","这话","外头","打发","自然","今儿","罢了","那些","小丫头",
"妹妹","屋里","如何","听说","问道","知道","太太","的话","人家","媳妇","看见","家里","不用","家里","一声","不得","一句","原来","这会子","到底","进去","姊妹","过去",
"方才","回去","别人","连忙","心中","哥哥","婆子","不成","丫鬟","里头","还是","小厮","只有","一件","明白","身上","有人","起身","已经","一日","那个","于是","果然",
}#将分词中无关的词剔除
hlm_word_ls = jieba.lcut(f) #利用jieba库中lcut将词分为列表
cnts = {}
for word in hlm_word_ls:
if len(word) == 1:#进行判断,将相同人不同叫法分为同一人
continue
elif word =="林黛玉" or word =="黛玉道":
rword ="黛玉"
elif word == "凤姐儿":
rword = "凤姐"
else:
rword = word
cnts[rword]= cnts.get(rword,0)+1
for i in del_list:#将无关词语在字典中进行删除
del cnts[i]
items = list(cnts.items())
items.sort(key=lambda x:x[1],reverse=True)#按出场次数最多的进行倒序排列
for i in range(10):
word,cnt = items[i]
print(word +" " +str(cnt))#打印出前十名出场人及出场次数
结果展示为:
宝玉 3759
凤姐 1564
贾母 1196
王夫人 983
老太太 970
黛玉 964
贾琏 662
奶奶 627
平儿 602
宝钗 549
举一反三
可对其他任意文章进行词频统计,如三国演义,水浒传,西游记等