欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python?中的jieba分詞庫(kù)

 更新時(shí)間:2021年11月23日 08:48:46   作者:L-L  
這篇文章主要介紹了python中的jieba分詞庫(kù),jieba?庫(kù)是優(yōu)秀的中文分詞第三方庫(kù),中文文本需要通過(guò)分詞獲得單個(gè)的詞語(yǔ),下面文章的的詳細(xì)內(nèi)容,需要的朋友可以參考一下
jieba 庫(kù)是優(yōu)秀的中文分詞第三方庫(kù),中文文本需要通過(guò)分詞獲得單個(gè)的詞語(yǔ)

1、jieba庫(kù)安裝

管理員身份運(yùn)行cmd窗口輸入命令:pip install jieba

2、jieba庫(kù)功能介紹

特征:
支持三種分詞模式:
精確模式:試圖將句子最精確地切開,適合文本分析
全模式:把句子中所有的可以成詞的詞語(yǔ)都掃描出來(lái), 速度非???,但是不能解決歧義
搜索引擎模式:在精確模式的基礎(chǔ)上,對(duì)長(zhǎng)詞再次切分,提高召回率,適合用于搜索引擎分詞
  • 支持繁體分詞
  • 支持自定義詞典
分詞功能:
jieba.cut 和 jieba.lcut 方法接受兩個(gè)傳入?yún)?shù):
  • 第一個(gè)參數(shù)為需要分詞的字符串
  • cut_all參數(shù)用來(lái)控制是否采用全模式
lcut 將返回的對(duì)象轉(zhuǎn)化為 list 對(duì)象返回
jieba.cut_for_search 和 jieba.lcut_for_search 方法接受一個(gè)參數(shù)
  • 需要分詞的字符串
該方法適合用于搜索引擎構(gòu)建倒排索引的分詞,顆粒度較細(xì)
jieba.lcut_for_search 方法返回列表類型
添加自定義詞典:
開發(fā)者可以指定自己自定義的詞典,以便包含jieba詞庫(kù)里沒(méi)有的詞。雖然jieba有新詞識(shí)別能力,但是自行添加新詞可以保證更高的正確率
用法:
使用自定義詞典文件:
jieba.load_userdict(file_name) # file_name 是自定義詞典的路徑
使用jieba在程序中動(dòng)態(tài)修改詞典:
jieba.add_word(new_words) # new_words 是想要添加的新詞
jieba.del_word(words) # 刪除words
關(guān)鍵詞提?。?/strong>
jieba.analyse.extract_tags(sentence,topK) #需要先import jieba.analyse
sentence 為待提取的文本
topK 為返回幾個(gè)TF/IDF權(quán)重最大的關(guān)鍵詞,默認(rèn)是20
詞性標(biāo)注:
jieba.posseg.POSTokenizer(tokenizer=None) 新建自定義分詞器,tokenizer參數(shù)可指定內(nèi)部使用的jieba.Tokenizer 分詞
jieba.posseg.dt 為默認(rèn)詞性標(biāo)注分詞器
標(biāo)注句子分詞后每個(gè)詞的詞性,采用和ictclas兼容的標(biāo)記法

3、案例

3.1、精確模式

import jieba
list1 = jieba.lcut("中華人民共和國(guó)是一個(gè)偉大的國(guó)家")
print(list1)
print("精確模式:"+"/".join(list1))

3.2、全模式

list2 = jieba.lcut("中華人民共和國(guó)是一個(gè)偉大的國(guó)家",cut_all = True)
print(list2,end=",")
print("全模式:"+"/".join(list2))

3.3、搜索引擎模式

list3 = jieba.lcut_for_search("中華人民共和國(guó)是一個(gè)偉大的國(guó)家")
print(list3)
print("搜索引擎模式:"+"  ".join(list3))

3.4、修改詞典

import jieba
text = "中信建投投資公司了一款游戲,中信也投資了一個(gè)游戲公司"
word = jieba.lcut(text)
print(word)
# 添加詞
jieba.add_word("中信建投")
jieba.add_word("投資公司")
word1 = jieba.lcut(text)
print(word1)
# 刪除詞
jieba.del_word("中信建投")
word2 = jieba.lcut(text)
print(word2)

3.5、詞性標(biāo)注

import jieba.posseg as pseg
words = pseg.cut("我愛(ài)北京天安門")
for i in words:
print(i.word,i.flag)

3.6、統(tǒng)計(jì)三國(guó)演義中人物出場(chǎng)的次數(shù)

三演義文本下載:
import  jieba
txt = open("文件路徑", "r", encoding='utf-8').read()    # 打開并讀取文件
words = jieba.lcut(txt)     # 使用精確模式對(duì)文本進(jìn)行分詞
counts = {}     # 通過(guò)鍵值對(duì)的形式存儲(chǔ)詞語(yǔ)及其出現(xiàn)的次數(shù)
for word in words:
    if  len(word) == 1:    # 單個(gè)詞語(yǔ)不計(jì)算在內(nèi)
        continue
    else:
        counts[word] = counts.get(word, 0) + 1    # 遍歷所有詞語(yǔ),每出現(xiàn)一次其對(duì)應(yīng)的值加 1   
items = list(counts.items())     #將鍵值對(duì)轉(zhuǎn)換成列表
items.sort(key=lambda x: x[1], reverse=True)    # 根據(jù)詞語(yǔ)出現(xiàn)的次數(shù)進(jìn)行從大到小排序 
for i in range(15):
    word, count = items[i]
    print("{0:<10}{1:>5}".format(word, count))
import jieba
excludes = {"將軍","卻說(shuō)","荊州","二人","不可","不能","如此","如何"}
txt = open("三國(guó)演義.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 == "關(guān)公" or word == "云長(zhǎng)":
        rword = "關(guān)羽"
    elif word == "玄德" or word == "玄德曰":
        rword = "劉備"
    elif word == "孟德" or word == "丞相":
        rword = "曹操"
    else:
        rword = word
        counts[rword] = counts.get(rword,0) + 1
    
for i in excludes:
    del counts[i]
    
items = list(counts.items())
items.sort(key=lambda x:x[1], reverse=True) 
for i in range(10):
    word, count = items[i]
    print ("{0:<10}{1:>5}".format(word, count)) 

到此這篇關(guān)于python 中的jieba分詞庫(kù)的文章就介紹到這了,更多相關(guān)python jieba分詞庫(kù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python?async模塊使用方法雜談

    Python?async模塊使用方法雜談

    協(xié)程(Coroutine),也可以被稱為微線程,是一種用戶態(tài)內(nèi)的上下文切換技術(shù)。簡(jiǎn)而言之,其實(shí)就是通過(guò)一個(gè)線程實(shí)現(xiàn)代碼塊相互切換執(zhí)行
    2023-04-04
  • 親手教你用Python打造一款摸魚倒計(jì)時(shí)界面

    親手教你用Python打造一款摸魚倒計(jì)時(shí)界面

    前段時(shí)間在微博看到一段摸魚人的倒計(jì)時(shí)模板,感覺(jué)很有意思,于是我用了一個(gè)小時(shí)的時(shí)間寫一個(gè)頁(yè)面出來(lái),下面小編把實(shí)現(xiàn)過(guò)程分享給大家,對(duì)Python摸魚倒計(jì)時(shí)界面感興趣的朋友一起看看吧
    2021-12-12
  • 詳解Python的Twisted框架中reactor事件管理器的用法

    詳解Python的Twisted框架中reactor事件管理器的用法

    這篇文章主要介紹了詳解Python的Twisted框架中reactor事件管理器的用法,Twisted是一款高人氣的異步Python開發(fā)框架,需要的朋友可以參考下
    2016-05-05
  • 十行代碼使用Python寫一個(gè)USB病毒

    十行代碼使用Python寫一個(gè)USB病毒

    本文給大家分享一個(gè)基于十行代碼使用Python寫一個(gè)USB病毒,很簡(jiǎn)單,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-06-06
  • 在python中只選取列表中某一縱列的方法

    在python中只選取列表中某一縱列的方法

    今天小編就為大家分享一篇在python中只選取列表中某一縱列的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11
  • python用quad、dblquad實(shí)現(xiàn)一維二維積分的實(shí)例詳解

    python用quad、dblquad實(shí)現(xiàn)一維二維積分的實(shí)例詳解

    今天小編大家分享一篇python用quad、dblquad實(shí)現(xiàn)一維二維積分的實(shí)例詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11
  • Django項(xiàng)目使用CircleCI的方法示例

    Django項(xiàng)目使用CircleCI的方法示例

    這篇文章主要介紹了Django項(xiàng)目使用CircleCI的方法示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • python線程鎖(thread)學(xué)習(xí)示例

    python線程鎖(thread)學(xué)習(xí)示例

    python thread提供了低級(jí)別的、原始的線程以及一個(gè)簡(jiǎn)單的鎖,下面提供一個(gè)python線程線程鎖(thread)學(xué)習(xí)示例,大家參考使用
    2013-12-12
  • Python中自然語(yǔ)言處理和文本挖掘的常規(guī)操作詳解

    Python中自然語(yǔ)言處理和文本挖掘的常規(guī)操作詳解

    自然語(yǔ)言處理和文本挖掘是數(shù)據(jù)科學(xué)中的重要領(lǐng)域,涉及對(duì)文本數(shù)據(jù)的分析和處理,這篇文章為大家介紹了一些常見的任務(wù)和實(shí)現(xiàn)方法,需要的可以了解下
    2025-02-02
  • Python3.6正式版新特性預(yù)覽

    Python3.6正式版新特性預(yù)覽

    Python3.6計(jì)劃在2016-12-16正式發(fā)布。截止目前,PSF 已經(jīng)發(fā)布了 9 個(gè)測(cè)試版本。在新版本正式發(fā)布之前,我們一起來(lái)體驗(yàn)一下都會(huì)有哪些重要的新特性。
    2016-12-12

最新評(píng)論