python中jieba庫的使用

2021-10-01 02:34:59 字數 2446 閱讀 7310

英語中我們可以通過.split()對字串進行分割,從而獲取到單詞的列表。

比如如下**對哈姆雷特中前10英文單詞頻率進行了統計排序

#calhamletv1.py

def gettext():

txt = open("word frequency/hamlet.txt", "r").read()

txt = txt.lower()

for ch in '!"#$%&()*+,-./:;<=>?@[\\]^_『~':

txt = txt.replace(ch, " ") #將文字中特殊字元替換為空格

return txt

hamlettxt = gettext()

words = hamlettxt.split()

counts = {}

for word in words:

counts[word] = counts.get(word,0) + 1

items = list(counts.items())

items.sort(key=lambda x:x[1], reverse=true)

for i in range(10):

word, count = items[i]

print ("".format(word, count))

執行看下效果,發現the出現次數最多

那麼在中文中,因為每個漢字連在一起,沒有空格,所以就不適用了。我們可以引用python第三庫中的jieba庫來解決這個問題。

jieba是優秀的中文分詞第三方庫,它能夠對中文文字進行分詞或得單個的詞語,因為是第三方庫,所以需要額外安裝。命令:pip install jieba

jieba分詞依靠的是乙個強大的中文庫,確定漢字自檢的關聯概率,概率大的組成片語,形成了分詞的結果。除了分詞呢,使用者還可以新增自定義的片語。

jieba分詞有三種模式:

精確模式:把文字精確的切分開,不存在冗餘單詞

全模式:把文字中所有可能的詞語都掃瞄出來,有冗餘

搜尋引擎模式:在精確模式基礎上,對長詞再次切分

jieba庫

函式描述

jieba.lcut(s)

精確模式,返回乙個列表型別的分詞結果

jieba.lcut(s,cut_all=true)

全模式,返回乙個列表型別的分詞結果,存在冗餘

jieba.luct_for_search(s)

搜尋引擎模式,返回乙個列表型別的分詞結果,存在冗餘

jieba.add_world(w)

向分詞詞典增加新詞w

利用jieba統計三國演義人名出線頻率

#calthreekingdomsv2.py

import jieba

excludes =

txt = open("word frequency/threekingdoms.txt", "r", encoding='utf-8').read()

words = jieba.lcut(txt)

counts = {}

for word in words:

if len(word) == 1:

continue

elif word == "諸葛亮" or word == "孔明曰":

rword = "孔明"

elif word == "關公" or word == "雲長":

rword = "關羽"

elif word == "玄德" or word == "玄德曰":

rword = "劉備"

elif word == "孟德" or word == "丞相":

rword = "曹操"

else:

rword = word

counts[rword] = counts.get(rword,0) + 1

for word in excludes:

del counts[word]

items = list(counts.items())

items.sort(key=lambda x:x[1], reverse=true)

for i in range(10):

word, count = items[i]

print ("".format(word, count))

執行看下效果:

Python初學13 jieba庫簡介與使用

目錄 一 jieba庫基本介紹 二 jieba庫的使用說明 三種模式 lcut lcut for search add word 三 文字詞頻統計 例項 簡單說,jieba是乙個非常好用的中文工具,以分詞起家,但功能比分詞要強大很多。而且,全國計算機等級考試二級python語言必考jieba庫。ji...

python中jieba庫的介紹和應用

一 安裝環境 window python 二 安裝方式 在電腦命令符 cmd 中直接寫進下面的語句 pip install jieba 即可 三 jieba庫分詞的基本原理 1 利用中文詞庫,分析漢字與漢字之間的關聯機率 2 還有分析漢字片語的關聯機率 3 還可以根據使用者自定義的片語進行分析 四 ...

mysql呼叫jieba庫 jieba庫的使用

jieba是優秀的中文分詞第三方庫 jieba有3種模式 1.精確模式,返回乙個列表型別的分詞結果 jieba.lcut 中國是乙個偉大的國家 中國 是 乙個 偉大 的 國家 2.全模式,返回乙個列表型別的分詞結果,存在冗餘 jieba.lcut 中國是乙個偉大的國家 cut all true 中國...