Python:jieba库的介绍与使用
前言:
jieba是優秀的中文分詞第三方庫,由于中文文本之間每個漢字都是連續書寫的,我們需要通過特定的手段來獲得其中的每個詞組,這種手段叫做分詞,我們可以通過jieba庫來完成這個過程。
目錄:
一、jieba庫基本介紹
(1)jieba庫概述
①?jieba是優秀的中文分詞第三方庫
②中文文本需要通過分詞獲得單個的詞語③?jieba是優秀的中文分詞第三方庫,需要額外安裝??????? ? ?
④jieba庫提供三種分詞模式,最簡單只需掌握一個函數
?(2)jieba分詞的原理
①分詞依靠中文詞庫
②? 利用一個中文詞庫,確定漢字之間的關聯概率
③ 漢字間概率大的組成詞組,形成分詞結果
④?除了分詞,用戶還可以添加自定義的詞組
二、jieba庫使用說明
?(1)jieba分詞的三種模式
????? ?精確模式、全模式、搜索引擎模式
①? jieba.cut(s) 精確模式:把文本精確的切分開,不存在冗余單詞:
?
②?jieba.lcut(s,cut_all=True) 全模式:把文本中所有可能的詞語都掃描出來,有冗余:
③jieba.lcut_for_search(s) 搜索引擎模式:在精確模式基礎上,對長詞再次切分:
?
三:jieba庫的安裝
因為?jieba?是一個第三方庫,所有需要我們在本地進行安裝:
ⅠIDLE中jieba庫的安裝:
Windows 下使用命令安裝:在聯網狀態下,在命令行下輸入?pip
install jieba?進行安裝,安裝完成后會提示安裝成功。具體過程如圖:
①? Win + r 打開運行框并輸入cmd打開指令框:
?
②在指令框輸入“pip install jieba”并按下回車等待下載:
?
③ 當出現“Successfully instll”,則表示安裝成功!
Ⅱ Pycharm中jieba庫的安裝:
打開?settings,搜索?Project Interpreter,在右邊的窗口選擇?+?號,點擊后在搜索框搜索?jieba,點擊安裝即可。具體過程如圖:
①? 點擊左上角Files中的Settings:
?
②? [endif]找到“Project”中的“python interpreter”,并點擊其中的“+”:
?
③在搜索欄中搜索“jieba”,并點擊左下角Install Package:
?
④ 當出現“Successfully instll
jieba”,則表示jieba庫安裝成功!
四:實例-文本詞頻統計
Jieba庫最強大的功能之一就是對文章出現的詞匯進行計數統計,即計算詞頻,對于一篇文章或者一部著作,我們可以通過以下步驟對出現的單詞進行統計:
源代碼:
注:
①? encoding=’ANSI’:將打開的文本格式設為ANSI形式
②? read(size):方法從文件當前位置起讀取size個字節,若無參數size,則表示讀取至文件結束為止,它范圍為字符串對象。
③items
= list(counts.items):將counts中的元素存入items表格中。
④? key = lambda x:x[1]:等價于 def func(x):
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? return x[1]
⑤ reverse = True:列表反轉排序,不寫reverse = True 就是列表升序排列,括號里面加上reverse =True 就是降序排列!
⑥??{0:<10}{1:>5}:<表示左對齊,>表示右對齊,數字表示寬度,<10表示左對齊,并占10個位置,>5表示右對齊,占5個位置。
運行結果:
如上運行結果有兩個不足之處,一是詞匯中出現了“卻說”、“丞相”、“二人”等人名以外的單詞,我們需要把這些單詞去除;二是“孔明”與“孔明說”、“曹操”與“丞相”等的是同一人,我們需要把它們合并同類項,將代碼進行優化后,我們得到:
運行結果:
相對于第一個程序,這個程序更為嚴謹與完整,已經得到了大致得到所需結果,但它還沒有完全解決排除非人名這一問題,所以在該基礎之上繼續使用排除人名的方法去完善這一程序……
總結:
使用jieba庫對一段文本進行詞頻的統計是一件非常有意思的事,我們只需要使用這第三方庫,就可以在不閱讀文本的情況下,得到該文本的高頻率詞匯。但jieba庫的作用遠遠不止于此,它更多的作用等著我們去挖掘。總的來說,jieba庫是一個優秀的中文分詞第三方庫,它在我們的程序中正大放光芒!
?
5人點贊
?
日記本
?
?
總結
以上是生活随笔為你收集整理的Python:jieba库的介绍与使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 情 人 节 快 乐
- 下一篇: Oracle9i 问题汇总--不断更新中