A. jieba支持python3.9嗎
jieba庫是一款優秀的 Python 第三方中文分詞庫,jieba 支持三種分詞模式:精確模式、全模式和搜索引擎模式,下面是三種模式的特點。
精確模式:試圖將語句最精確的切分,不存在冗餘數據,適合做文本分析
全模式:將語句中所有可能是詞的詞語都切分出來,速度很快,但是存在冗餘數據
搜索引擎模式:在精確模式的基礎上,對長詞再次進行切分
一、jieba庫的安裝
因為 jieba 是一個第三方庫,所有需要我們在本地進行安裝。
B. jieba分詞詳解
「結巴」分詞是一個Python 中文分片語件,參見 https://github.com/fxsjy/jieba
可以對中文文本進行 分詞、詞性標注、關鍵詞抽取 等功能,並且支持自定義詞典。
本文包括以下內容:
1、jieba分詞包的 安裝
2、jieba分詞的 使用教程
3、jieba分詞的 工作原理與工作流程
4、jieba分詞所涉及到的 HMM、TextRank、TF-IDF等演算法介紹
可以直接使用pip來進行安裝:
sudo pip install jieba
或者
sudo pip3 install jieba
關鍵詞抽取有兩種演算法,基於TF-IDF和基於TextRank:
jieba分詞有三種不同的分詞模式: 精確模式、全模式和搜索引擎模式 :
對應的,函數前加l即是對應得到list結果的函數:
精確模式是最常用的分詞方法,全模式會將句子中所有可能的詞都列舉出來,搜索引擎模式則適用於搜索引擎使用。具體的差別可在下一節工作流程的分析中詳述。
在上述每個函數中,都有名為HMM的參數。這一項表示是否在分詞過程中利用HMM進行新詞發現。關於HMM,本文附錄中將簡述相關知識。
另外分詞支持自定義字典,詞典格式和 dict.txt 一樣,一個詞佔一行;每一行分三部分:詞語、詞頻(可省略)、詞性(可省略),用空格隔開,順序不可顛倒。
具體使用方法為:
關鍵詞抽取的兩個函數的完整參數為:
可以通過
來打開或關閉並行分詞功能。
個人感覺一般用不到,大文件分詞需要手動實現多進程並行,句子分詞也不至於用這個。
jieba分詞主要通過詞典來進行分詞及詞性標注,兩者使用了一個相同的詞典。正因如此,分詞的結果優劣將很大程度上取決於詞典,雖然使用了HMM來進行新詞發現。
jieba分詞包整體的工作流程如下圖所示:
下面將根據源碼詳細地分析各個模塊的工作流程。
在之後幾節中,我們在 藍色的方框 中示範了關鍵步驟的輸出樣例或詞典文件的格式樣例。在本節中都採用類似的表示方式。
jieba分詞中,首先通過對照典生成句子的 有向無環圖 ,再根據選擇的模式不同,根據詞典 尋找最短路徑 後對句子進行截取或直接對句子進行截取。對於未登陸詞(不在詞典中的詞)使用 HMM 進行新詞發現。
詞典的格式應為
word1 freq1 word_type1
word2 freq2 word_type2
…
其中自定義用戶詞典中詞性word_type可以省略。
詞典在其他模塊的流程中可能也會用到,為方便敘述,後續的流程圖中將會省略詞典的初始化部分。
圖b演示了搜索引擎模式的工作流程,它會在精確模式分詞的基礎上,將長詞再次進行切分。
在這里我們假定讀者已經了解HMM相關知識,如果沒有可先行閱讀下一章內容中的HMM相關部分或者跳過本節。
在jieba分詞中,將字在詞中的位置B、M、E、S作為隱藏狀態,字是觀測狀態,使用了詞典文件分別存儲字之間的表現概率矩陣(finalseg/prob_emit.py)、初始概率向量(finalseg/prob_start.py)和轉移概率矩陣(finalseg/prob_trans.py)。這就是一個標準的 解碼問題 ,根據概率再利用 viterbi演算法 對最大可能的隱藏狀態進行求解。
詞性分析部分與分詞模塊用了同一個基礎的分詞器,對於詞典詞的詞性,將直接從詞典中提取,但是對於新詞,詞性分析部分有一個 專屬的新詞及其詞性的發現模塊 。
用於詞性標注的HMM模型與用於分詞的HMM模型相似,同樣將文字序列視為可見狀態,但是隱藏狀態不再是單單的詞的位置(B/E/M/S),而變成了詞的位置與詞性的組合,如(B,v)(B,n)(S,n)等等。因此其初始概率向量、轉移概率矩陣和表現概率矩陣和上一節中所用的相比都要龐大的多,但是其本質以及運算步驟都沒有變化。
具體的工作流程如下圖所示。
jieba分詞中有兩種不同的用於關鍵詞抽取的演算法,分別為TextRank和TF-IDF。實現流程比較簡單,其核心在於演算法本身。下面簡單地畫出實現流程,具體的演算法可以參閱下一章內容。
TextRank方法默認篩選詞性,而TF-IDF方法模型不進行詞性篩選。
在本章中,將會簡單介紹相關的演算法知識,主要包括用於新詞發現的 隱馬爾科夫模型 和 維特比演算法 、用於關鍵詞提取的 TextRank 和 TF-IDF 演算法。
HMM即隱馬爾科夫模型,是一種基於馬爾科夫假設的統計模型。之所以為「隱」,是因為相較於馬爾科夫過程HMM有著未知的參數。在世界上,能看到的往往都是表象,而事物的真正狀態往往都隱含在表象之下,並且與表象有一定的關聯關系。
其中,S、O分別表示狀態序列與觀測序列。
如果讀者還對這部分內容心存疑問,不妨先往下閱讀,下面我們將以一個比較簡單的例子對HMM及解碼演算法進行實際說明與演示,在讀完下一小節之後再回來看這些式子,或許能夠恍然大悟。
下面以一個簡單的例子來進行闡述:
假設小明有一個網友小紅,小紅每天都會在朋友圈說明自己今天做了什麼,並且假設其僅受當天天氣的影響,而當天的天氣也只受前一天天氣的影響。
於小明而言,小紅每天做了什麼是可見狀態,而小紅那裡的天氣如何就是隱藏狀態,這就構成了一個HMM模型。一個HMM模型需要有五個要素:隱藏狀態集、觀測集、轉移概率、觀測概率和初始狀態概率。
即在第j個隱藏狀態時,表現為i表現狀態的概率。式中的n和m表示隱藏狀態集和觀測集中的數量。
本例中在不同的天氣下,小紅要做不同事情的概率也不同, 觀測概率 以表格的形式呈現如下:
其中
除此之外,還需要一個初始狀態概率向量π,它表示了觀測開始時,即t=0時,隱藏狀態的概率值。本例中我們指定 π={0,0,1} 。
至此,一個完整的 隱馬爾科夫模型 已經定義完畢了。
HMM一般由三類問題:
概率計算問題 ,即給定 A,B,π 和隱藏狀態序列,計算觀測序列的概率;
預測問題 ,也成解碼問題,已知 A,B,π 和觀測序列,求最優可能對應的狀態序列;
學習問題 ,已知觀測序列,估計模型的 A,B,π 參數,使得在該模型下觀測序列的概率最大,即用極大似然估計的方法估計參數。
在jieba分詞中所用的是解碼問題,所以此處對預測問題和學習問題不做深入探討,在下一小節中我們將繼續以本節中的例子為例,對解碼問題進行求解。
在jieba分詞中,採用了HMM進行新詞發現,它將每一個字表示為B/M/E/S分別代表出現在詞頭、詞中、詞尾以及單字成詞。將B/M/E/S作為HMM的隱藏狀態,而連續的各個單字作為觀測狀態,其任務即為利用觀測狀態預測隱藏狀態,並且其模型的 A,B,π 概率已經給出在文件中,所以這是一個標準的解碼問題。在jieba分詞中採用了 Viterbi演算法 來進行求解。
Viterbi演算法的基本思想是: 如果最佳路徑經過一個點,那麼起始點到這個點的路徑一定是最短路徑,否則用起始點到這點更短的一條路徑代替這段,就會得到更短的路徑,這顯然是矛盾的;從起始點到結束點的路徑,必然要經過第n個時刻,假如第n個時刻有k個狀態,那麼最終路徑一定經過起始點到時刻n中k個狀態里最短路徑的點 。
將時刻t隱藏狀態為i所有可能的狀態轉移路徑i1到i2的狀態最大值記為
下面我們繼續以上一節中的例子來對viterbi演算法進行闡述:
小明不知道小紅是哪裡人,他只能通過小紅每天的活動來推斷那裡的天氣。
假設連續三天,小紅的活動依次為:「睡覺-打游戲-逛街」,我們將據此計算最有可能的天氣情況。
表示第一天為雨天能夠使得第二天為晴天的概率最大(也就是說如果第二天是晴天在最短路徑上的話,第一天是雨天也一定在最短路徑上,參見上文中Viterbi演算法的基本思想)
此時已經到了最後的時刻,我們開始回溯。
其計算過程示意圖如下圖所示。
)的路徑。
TF-IDF(詞頻-逆文本頻率)是一種用以評估字詞在文檔中重要程度的統計方法。它的核心思想是,如果某個詞在一篇文章中出現的頻率即TF高,並且在其他文檔中出現的很少,則認為這個詞有很好的類別區分能力。
其中:
TextRank是一種用以關鍵詞提取的演算法,因為是基於PageRank的,所以先介紹PageRank。
PageRank通過互聯網中的超鏈接關系確定一個網頁的排名,其公式是通過一種投票的思想來設計的:如果我們計算網頁A的PageRank值,那麼我們需要知道哪些網頁鏈接到A,即首先得到A的入鏈,然後通過入鏈給網頁A進行投票來計算A的PR值。其公式為:
其中:
d為阻尼系數,取值范圍為0-1,代表從一定點指向其他任意點的概率,一般取值0.85。
將上式多次迭代即可直到收斂即可得到結果。
TextRank演算法基於PageRank的思想,利用投票機制對文本中重要成分進行排序。如果兩個詞在一個固定大小的窗口內共同出現過,則認為兩個詞之間存在連線。
公式與PageRank的基本相同。多次迭代直至收斂,即可得到結果。
在jieba分詞中,TextRank設定的詞窗口大小為5,將公式1迭代10次的結果作為最終權重的結果,而不一定迭代至收斂。
C. python jieba什麼用
Python 中文分片語件
支持三種分詞模式:
精確模式,試圖將句子最精確地切開,適合文本分析;
全模式,把句子中所有的可以成詞的詞語都掃描出來, 速度非常快,但是不能解決歧義;
搜索引擎模式,在精確模式的基礎上,對長詞再次切分,提高召回率,適合用於搜索引擎分詞。
支持繁體分詞
支持自定義詞典
MIT 授權協議
項目地址
https://github.com/fxsjy/jieba
D. 淺談文本分析分詞及關系圖
在文本分析中,我們需要對其文本進行分詞,並對這些分詞統計分析,基於 python , jieba 是很受歡迎的一種分詞庫,而後對分詞之間的關系,當然Python Matplotlib 基於networkx畫關系網路圖也是可以的,但是這里我們將藉助 Gephi 來製作,這個軟體容易上手,這里我們並對其中個別方法進行解釋。
jieba庫是Python中一個重要的第三方中文分詞函數庫,能夠將一段中文文本分隔成中文詞語序列。
jieba庫分詞所用的原理就是把分詞的內容與分詞的中文詞庫進行對比,通過圖結構和動態規劃方法找到最大概率的片語。
支持四種分詞模式:
四種模式分隔舉例:
結果:
由上我們可以發現,我們想要把生態環境、污水處理、有限公司都分開,精確模式和Paddle模式,未分開,全模式和搜索引擎模式雖分開了,但卻也含有未分的片語。所以這里我們可以採用自定義詞典,使用load_userdict(),不過注意的是需要給自定義詞做詞頻,否則自定義詞典不起作用,因為,當自定義詞詞頻低於默認詞典的詞頻時,它還是採用默認分詞,所以我們設定詞頻大於默認詞詞頻時,就會採用自定義詞典的詞分詞。
具體怎麼設置自定義詞典的詞頻數,還沒有具體的公式,越大當然概率越大,只要超過默認詞典即可,但也不宜過大。 默認詞典
自定義詞典
其中 user_dict 定義如下:
jieba簡單介紹及使用介紹到這里,更深層理論及使用可學習這個地址: jieba-github參考
在 圖論 中, 集聚系數 (也稱 群聚系數 、 集群系數 )是用來描述一個 圖 中的 頂點 之間結集成團的程度的系數。具體來說,是一個點的鄰接點之間相互連接的程度。例如生活社交網路中,你的朋友之間相互認識的程度【 基於復雜網路理論的代謝網路結構研究進展 】。有證據表明,在各類反映真實世界的網路結構,特別是 社交網路 結構中,各個結點之間傾向於形成密度相對較高的網群【 TRANSITIVITY IN STRUCTURAL MODELS OF SMALL GROUPS 、 Collective dynamics of 'small-world' networks 】。也就是說,相對於在兩個節點之間隨機連接而得到的網路,真實世界網路的集聚系數更高。
假設圖中有一部分點是兩兩相連的,那麼可以找出很多個「三角形」,其對應的三點兩兩相連,稱為閉三點組。除此以外還有開三點組,也就是之間連有兩條邊的三點(缺一條邊的三角形)。
Clustering coefficient 的定義有兩種; 全局 的和 局部 的。
全局的演算法:
局部的演算法:
平均系數:
下面即分析其系數求解:
接下來我們就以一個實例來分析聚類系數應用,這里我們用到的工具是 Gephi ,數據也是使用其內置的數據。
在上面分析中,我們提到節點大小,代表自身權重,但是有時由於我們的節點范圍導致有些需要辨別的節點不易分析,這時我們可以考慮從顏色入手,即權重從小到大以顏色的變化老判定,當然也可以用同一種顏色通過漸變來判定,這里我是使用了三種顏色變化范圍來分析。如下圖選擇及展示:
由上圖,從顏色上我們選擇了紅黃藍的依次變化情況,右圖我們從節點大小加上顏色更方便判定節點自身的權重了,即自身出現次數越多顏色越靠近藍色,反之靠近紅色。
由上倆個圖的變化可察覺出它們的布局分布是一樣的,那它是什麼原因呢?
如圖結構可分析形成聚合的簇團,是相互之間彈簧吸引的強烈的,也就是說關系比較密切些。
在數據中,我們關系圖是由節點和邊組成,上面都簡要分析了節點的處理,那麼邊怎麼分析呢?其實邊由圖中是可以以線的粗細來判斷倆個詞之間的關系,即出現的次數。如下圖:
由於次數范圍太廣,我們把它們轉化成0--1之間的范圍,以最高權重為1,其它數據以此為基準做轉化。
即為所轉化後的佔比值, 為每個權重值, 為最大權重值
jieba-github參考
Clustering coefficient
ForceAtlas2, A Continuous Graph Layout Algorithm for Handy Network Visualization
E. 如何用python和jieba分詞,統計詞頻
#!python3
#-*-coding:utf-8-*-
importos,codecs
importjieba
fromcollectionsimportCounter
defget_words(txt):
seg_list=jieba.cut(txt)
c=Counter()
forxinseg_list:
iflen(x)>1andx!=' ':
c[x]+=1
print('常用詞頻度統計結果')
for(k,v)inc.most_common(100):
print('%s%s%s%d'%(''*(5-len(k)),k,'*'*int(v/3),v))
if__name__=='__main__':
withcodecs.open('19d.txt','r','utf8')asf:
txt=f.read()
get_words(txt)
F. 部分常用分詞工具使用整理
以下分詞工具均能在Python環境中直接調用(排名不分先後)。
1、jieba(結巴分詞) 免費使用
2、HanLP(漢語言處理包) 免費使用
3、SnowNLP(中文的類庫) 免費使用
4、FoolNLTK(中文處理工具包) 免費使用
5、Jiagu(甲骨NLP) 免費使用
6、pyltp(哈工大語言雲) 商用需要付費
7、THULAC(清華中文詞法分析工具包) 商用需要付費
8、NLPIR(漢語分詞系統) 付費使用
1、jieba(結巴分詞)
「結巴」中文分詞:做最好的 Python 中文分片語件。
項目Github地址:jieba
安裝 :
pip install jieba
使用 :
import jieba
jieba.initialize()
text = '化妝和服裝'
words = jieba.cut(text)
words = list(words)
print(words)
2、HanLP(漢語言處理包)
HanLP是一系列模型與演算法組成的NLP工具包,由大快搜索主導並完全開源,目標是普及自然語言處理在生產環境中的應用。HanLP具備功能完善、性能高效、架構清晰、語料時新、可自定義的特點。
項目Github地址:pyhanlp
安裝:
pip install pyhanlp
使用 :
import pyhanlp
text = '化妝和服裝'
words = []
for term in pyhanlp.HanLP.segment(text):
words.append(term.word)
print(words)
3、SnowNLP(中文的類庫)
SnowNLP是一個python寫的類庫,可以方便的處理中文文本內容,是受到了TextBlob的啟發而寫的,由於現在大部分的自然語言處理庫基本都是針對英文的,於是寫了一個方便處理中文的類庫,並且和TextBlob不同的是,這里沒有用NLTK,所有的演算法都是自己實現的,並且自帶了一些訓練好的字典。
項目Github地址:snownlp
安裝:
pip install snownlp
使用:
import snownlp
text = '化妝和服裝'
words = snownlp.SnowNLP(text).words
print(words)
4、FoolNLTK(中文處理工具包)
可能不是最快的開源中文分詞,但很可能是最準的開源中文分詞。
項目Github地址:FoolNLTK
安裝:
pip install foolnltk
使用:
import fool
text = '化妝和服裝'
words = fool.cut(text)
print(words)
5、Jiagu(甲骨NLP)
基於BiLSTM模型,使用大規模語料訓練而成。將提供中文分詞、詞性標注、命名實體識別、關鍵詞抽取、文本摘要、新詞發現等常用自然語言處理功能。參考了各大工具優缺點製作,將Jiagu回饋給大家。
項目Github地址:jiagu
安裝:
pip3 install jiagu
使用:
import jiagu
jiagu.init()
text = '化妝和服裝'
words = jiagu.seg(text)
print(words)
6、pyltp(哈工大語言雲)
pyltp 是 LTP 的 Python 封裝,提供了分詞,詞性標注,命名實體識別,依存句法分析,語義角色標注的功能。
項目Github地址:pyltp,3.4模型下載鏈接:網盤
安裝:
pip install pyltp
使用:
import pyltp
segmentor = pyltp.Segmentor()
segmentor.load('model/ltp_data_v3.4.0/cws.model') # 模型放置的路徑
text = '化妝和服裝'
words = segmentor.segment(text)
words = list(words)
print(words)
7、THULAC(清華中文詞法分析工具包)
THULAC(THU Lexical Analyzer for Chinese)由清華大學自然語言處理與 社會 人文計算實驗室研製推出的一套中文詞法分析工具包,具有中文分詞和詞性標注功能。
項目Github地址:THULAC-Python
安裝:
pip install thulac
使用:
import thulac
thu = thulac.thulac(seg_only=True)
text = '化妝和服裝'
words = thu.cut(text, text=True).split()
print(words)
NLPIR(漢語分詞系統)
主要功能包括中文分詞;英文分詞;詞性標注;命名實體識別;新詞識別;關鍵詞提取;支持用戶專業詞典與微博分析。NLPIR系統支持多種編碼、多種操作系統、多種開發語言與平台。
項目Github地址:pynlpir
安裝:
pip install pynlpir
下載證書覆蓋到安裝目錄,NLPIR.user 例如安裝目錄:/usr/lib64/python3.4/site-packages/pynlpir/Data
使用 :
import pynlpir
pynlpir.open()
text = '化妝和服裝'
words = pynlpir.segment(text, pos_tagging=False)
print(words)
pynlpir.close()
G. python中怎麼安裝jieba庫
首先點擊桌面左下角的開始圖標,然後選擇運行。
(推薦教程:Python入門教程)
在彈出的窗口中輸入cmd,然後點擊確定。
輸入:pip install jieba,然後按下回車鍵會自動開始安裝。
安裝成功後輸入:python -m pip list,然後按下回車鍵來看下jieba庫是否安裝成功。
輸入:python,按下回車鍵,進入python解釋器。
輸入代碼:import jieba,導入這個庫,如果不報錯就時安裝成功啦。
H. 怎麼是用python 語言 使用結巴分詞 呢
Python代碼
#encoding=utf-8
importjieba
seg_list=jieba.cut("我來到北京清華大學",cut_all=True)
print"FullMode:","/".join(seg_list)#全模式
seg_list=jieba.cut("我來到北京清華大學",cut_all=False)
print"DefaultMode:","/".join(seg_list)#默認模式
seg_list=jieba.cut("他來到了網易杭研大廈")
print",".join(seg_list)
輸出:
FullMode:我/來/來到/到/北/北京/京/清/清華/清華大學/華/華大/大/大學/學
DefaultMode:我/來到/北京/清華大學
他,來到,了,網易,杭研,大廈(此處,「杭研」並沒有在詞典中,但是也被Viterbi演算法識別出來了)
I. 盤點Python常用的模塊和包
模塊
1.定義
計算機在開發過程中,代碼越寫越多,也就越難以維護,所以為了編寫可維護的代碼,我們會把函數進行分組,放在不同的文件里。在python里,一個.py文件就是一個模塊。
2.優點:
提高代碼的可維護性。
提高代碼的復用,當模塊完成時就可以在其他代碼中調用。
引用其他模塊,包含python內置模塊和其他第三方模塊。
避免函數名和變數名等名稱沖突。
python內建模塊:
1.sys模塊
2.random模塊
3.os模塊:
os.path:講解
https://www.cnblogs.com/yufeihlf/p/6179547.html
數據可視化
1.matplotlib :
是Python可視化程序庫的泰斗,它的設計和在1980年代被設計的商業化程序語言MATLAB非常接近。比如pandas和Seaborn就是matplotlib的外包,它們讓你能用更少的代碼去調用 matplotlib的方法。
訪問:
https://matplotlib.org/
顏色:
https://www.cnblogs.com/darkknightzh/p/6117528.html
教程:
https://wizardforcel.gitbooks.io/matplotlib-user-guide/3.1.html
2.Seaborn:
它是構建在matplotlib的基礎上的,用簡潔的代碼來製作好看的圖表。Seaborn跟matplotlib最大的區別就是它的默認繪圖風格和色彩搭配都具有現代美感。
訪問:
http://seaborn.pydata.org/index.html
3.ggplot:
gplot 跟 matplotlib 的不同之處是它允許你疊加不同的圖層來完成一幅圖
訪問:
http://ggplot.yhathq.com/
4.Mayavi:
Mayavi2完全用Python編寫,因此它不但是一個方便實用的可視化軟體,而且可以方便地用Python編寫擴展,嵌入到用戶編寫的Python程序中,或者直接使用其面向腳本的API:mlab快速繪制三維圖
訪問:http://code.enthought.com/pages/mayavi-project.html
講解:https://blog.csdn.net/ouening/article/details/76595427https://www.jianshu.com/p/81e6f4f1cdd8
5.TVTK:
TVTK庫對標準的VTK庫進行包裝,提供了Python風格的API、支持Trait屬性和numpy的多維數組。
VTK (http://www.vtk.org/) 是一套三維的數據可視化工具,它由C++編寫,包涵了近千個類幫助我們處理和顯示數據
講解:https://docs.huihoo.com/scipy/scipy-zh-cn/tvtk_intro.html
機器學習
1.Scikit-learn
是一個簡單且高效的數據挖掘和數據分析工具,易上手,可以在多個上下文中重復使用。它基於NumPy, SciPy 和 matplotlib,開源,可商用(基於 BSD 許可)。
訪問:
講解:https://blog.csdn.net/finafily0526/article/details/79318401
2.Tensorflow
最初由谷歌機器智能科研組織中的谷歌大腦團隊(Google Brain Team)的研究人員和工程師開發。該系統設計的初衷是為了便於機器學習研究,能夠更快更好地將科研原型轉化為生產項目。
相關推薦:《Python視頻教程》
Web框架
1.Tornado
訪問:http://www.tornadoweb.org/en/stable/
2.Flask
訪問:http://flask.pocoo.org/
3.Web.py
訪問:http://webpy.org/
4.django
https://www.djangoproject.com/
5.cherrypy
http://cherrypy.org/
6.jinjs
http://docs.jinkan.org/docs/jinja2/
GUI 圖形界面
1.Tkinter
https://wiki.python.org/moin/TkInter/
2.wxPython
https://www.wxpython.org/
3.PyGTK
http://www.pygtk.org/
4.PyQt
https://sourceforge.net/projects/pyqt/
5.PySide
http://wiki.qt.io/Category:LanguageBindings::PySide
科學計算
教程
https://docs.huihoo.com/scipy/scipy-zh-cn/index.html#
1.numpy
訪問
http://www.numpy.org/
講解
https://blog.csdn.net/lm_is_dc/article/details/81098805
2.sympy
sympy是一個Python的科學計算庫,用一套強大的符號計算體系完成諸如多項式求值、求極限、解方程、求積分、微分方程、級數展開、矩陣運算等等計算問題
訪問
https://docs.sympy.org/0.7.1/guide.html#guide
講解
https://www.jianshu.com/p/339c91ae9f41
解方程
https://www.cnblogs.com/zyg123/p/10549354.html
3.SciPy
官網
https://www.scipy.org/
講解
https://blog.csdn.net/wsp_1138886114/article/details/80444621
4.pandas
官網
http://pandas.pydata.org/
講解
https://www.cnblogs.com/linux-wangkun/p/5903945.html
5.blaze
官網
http://blaze.readthedocs.io/en/latest/index.html
密碼學
1.cryptography
https://pypi.python.org/pypi/cryptography/
2.hashids
http://www.oschina.net/p/hashids
3.Paramiko
http://www.paramiko.org/
4.Passlib
https://pythonhosted.org/passlib/
5.PyCrypto
https://pypi.python.org/pypi/pycrypto
6.PyNacl
http://pynacl.readthedocs.io/en/latest/
爬蟲相關
requests
http://www.python-requests.org/
scrapy
https://scrapy.org/
pyspider
https://github.com/binux/pyspider
portia
https://github.com/scrapinghub/portia
html2text
https://github.com/Alir3z4/html2text
BeautifulSoup
https://www.crummy.com/software/BeautifulSoup/
lxml
http://lxml.de/
selenium
http://docs.seleniumhq.org/
mechanize
https://pypi.python.org/pypi/mechanize
PyQuery
https://pypi.python.org/pypi/pyquery/
creepy
https://pypi.python.org/pypi/creepy
gevent
一個高並發的網路性能庫
http://www.gevent.org/
圖像處理
bigmoyan
http://scikit-image.org/
Python Imaging Library(PIL)
http://www.pythonware.com/procts/pil/
pillow:
http://pillow.readthedocs.io/en/latest/
自然語言處理
1.nltk:
http://www.nltk.org/
教程
https://blog.csdn.net/wizardforcel/article/details/79274443
2.snownlp
https://github.com/isnowfy/snownlp
3.Pattern
https://github.com/clips/pattern
4.TextBlob
http://textblob.readthedocs.io/en/dev/
5.Polyglot
https://pypi.python.org/pypi/polyglot
6.jieba:
https://github.com/fxsjy/jieba
資料庫驅動
mysql-python
https://sourceforge.net/projects/mysql-python/
PyMySQL
https://github.com/PyMySQL/PyMySQL
PyMongo
https://docs.mongodb.com/ecosystem/drivers/python/
pymongo
MongoDB庫
訪問:https://pypi.python.org/pypi/pymongo/
redis
Redis庫
訪問:https://pypi.python.org/pypi/redis/
cxOracle
Oracle庫
訪問:https://pypi.python.org/pypi/cx_Oracle
SQLAlchemy
SQL工具包及對象關系映射(ORM)工具
訪問:http://www.sqlalchemy.org/
peewee,
SQL工具包及對象關系映射(ORM)工具
訪問:https://pypi.python.org/pypi/peewee
torndb
Tornado原裝DB
訪問:https://github.com/bdarnell/torndb
Web
pycurl
URL處理工具
smtplib模塊
發送電子郵件
其他庫暫未分類
1.PyInstaller:
是一個十分有用的第三方庫,它能夠在Windows、Linux、 Mac OS X 等操作系統下將 Python 源文件打包,通過對源文件打包, Python 程序可以在沒有安裝 Python 的環境中運行,也可以作為一個 獨立文件方便傳遞和管理。
2.Ipython
一種互動式計算和開發環境
講解
https://www.cnblogs.com/zzhzhao/p/5295476.html
ls、cd 、run、edit、clear、exist
J. python裡面 jieba.add_word()是永久添加的嗎
github上面有一個說明文件,裡面明確說了「使用 add_word(word, freq=None, tag=None) 和 del_word(word) 可在程序中動態修改詞典」。所以這個add_word的修改只是用於當前的程序。你換一個程序的話,需要從新添加。