1、jieba庫基本介紹
(1)、jieba庫概述
jieba是優秀的中文分詞第三方庫
- 中文文本需要通過分詞獲得單個的詞語
- jieba是優秀的中文分詞第三方庫,需要額外安裝
- jieba庫提供三種分詞模式,最簡單只需掌握一個函數
(2)、jieba分詞的原理
Jieba分詞依靠中文詞庫
- 利用一個中文詞庫,確定漢字之間的關聯概率
- 漢字間概率大的組成詞組,形成分詞結果
- 除了分詞,用戶還可以添加自定義的詞組
2、jieba庫使用說明
(1)、jieba分詞的三種模式
精確模式、全模式、搜索引擎模式
- 精確模式:把文本精確的切分開,不存在冗余單詞
- 全模式:把文本中所有可能的詞語都掃描出來,有冗余
- 搜索引擎模式:在精確模式基礎上,對長詞再次切分
(2)、jieba庫常用函數
3、jieba應用實例
4、利用jieba庫統計三國演義中任務的出場次數
import jieba txt = open("D:\\三國演義.txt", "r", encoding='utf-8').read() words = jieba.lcut(txt) # 使用精確模式對文本進行分詞 counts = {} # 通過鍵值對的形式存儲詞語及其出現的次數 for word in words: if len(word) == 1: # 單個詞語不計算在內 continue else: counts[word] = counts.get(word, 0) + 1 # 遍歷所有詞語,每出現一次其對應的值加 1 items = list(counts.items())#將鍵值對轉換成列表 items.sort(key=lambda x: x[1], reverse=True) # 根據詞語出現的次數進行從大到小排序 for i in range(15): word, count = items[i] print("{0:<5}{1:>5}".format(word, count))
統計了次數對多前十五個名詞,曹操不愧是一代梟雄,第一名當之無愧,但是我們會發現得到的數據還是需要進一步處理,比如一些無用的詞語,一些重復意思的詞語。