Python的這些庫,你知道多少?
一、導(dǎo)讀
通常,開發(fā)大量原始代碼是一個費時費力的工作而且有時候有很多專業(yè)知識我們不可能都一 一弄懂,為了避免這種情況,我們會盡可能多地使用庫中已有的類來創(chuàng)建對象,通常僅需要一行代碼。因此,庫能夠幫助我們使用適量的代碼執(zhí)行重要的任務(wù)。我想這也是為什么python能夠活躍在我們身邊的原因之一吧,歡迎大家點贊收藏,日后學(xué)習(xí)。
二、前戲
剛才忘了說了,大家在用python的時候我還是推薦大家下一個集成開發(fā)環(huán)境Anaconda
這里面能夠更好的管理這些第三方庫文件,其好處只有你真正用過才知道老規(guī)矩想用的話自己查, 老師說過: “程序員最長走的兩條路一是自己去百度;二是找別人幫你百度?。?!” 這真的是名言
三、Python標準庫
有時候你可能想不到python標準庫里面有這么多工功能,Python標準庫提供了豐富的功能,包括文本/二進制數(shù)據(jù)處理、數(shù)學(xué)運算、函數(shù)式編程、文件/目錄訪問、數(shù)據(jù)持久化、數(shù)據(jù)壓縮/歸檔、加密、操作系統(tǒng)服務(wù)、并發(fā)編程、進程間通信、網(wǎng)絡(luò)協(xié)議、JSON / XML /其他Internet數(shù)據(jù)格式、多媒體、國際化、GUI、調(diào)試、分析等。下面列出了一部分Python標準庫模塊。
- difflib:差異計算工具
- collections:建立在列表、元組、字典和集合基礎(chǔ)上的加強版數(shù)據(jù)結(jié)構(gòu)。
- csv:處理用逗號分隔值的文件。
- datetime, time:日期和時間操作。
- decimal:定點或浮點運算,包括貨幣計算。
- doctest:通過驗證測試或嵌入在docstring中的預(yù)期結(jié)果進行簡單的單元測試。
- json:處理用于Web服務(wù)和NoSQL文檔數(shù)據(jù)庫的JSON(JavaScript Object Notation)數(shù)據(jù)。
- math:常見的數(shù)學(xué)常量和運算。
- os:與操作系統(tǒng)進行交互。
- queue:一種先進先出的數(shù)據(jù)結(jié)構(gòu)。
- random:偽隨機數(shù)操作。
- re:用于模式匹配的正則表達式。
- sqlite3:SQLite關(guān)系數(shù)據(jù)庫訪問。
- statistics:數(shù)理統(tǒng)計函數(shù),如均值、中值、眾數(shù)和方差等。
- sys:—命令行參數(shù)處理,如標準輸入流、輸出流和錯誤流。
- timeit:性能分析。
- string:通用字符串操作
- textwrap:文本填充
- unicodedata:Unicode字符數(shù)據(jù)庫
- stringprep:互聯(lián)網(wǎng)字符串準備工具
- readline:GNU按行讀取接口
- rlcompleter:GNU按行讀取的實現(xiàn)函數(shù)
Python擁有一個龐大且仍在快速增長的開源社區(qū),社區(qū)中的開發(fā)者來自許多不同的領(lǐng)域。該社區(qū)中有大量的開源庫是Python受歡迎的最重要的原因之一。
許多任務(wù)只需要幾行Python代碼就可以完成,這會令人感到很神奇。下面列出了一些流行的數(shù)據(jù)科學(xué)庫。
四、科學(xué)計算與統(tǒng)計
- NumPy(Numerical Python):Python沒有內(nèi)置的數(shù)組數(shù)據(jù)結(jié)構(gòu)。它提供的列表類型雖然使用起來更方便,但是處理速度較慢。NumPy提供了高性能的ndarray數(shù)據(jù)結(jié)構(gòu)來表示列表和矩陣,同時還提供了處理這些數(shù)據(jù)結(jié)構(gòu)的操作。
- SciPy(Scientific Python):SciPy基于NumPy開發(fā),增加了用于科學(xué)處理的程序,例如積分、微分方程、額外的矩陣處理等。scipy.org負責(zé)管理SciPy和NumPy。
- StatsModels:為統(tǒng)計模型評估、統(tǒng)計測試和統(tǒng)計數(shù)據(jù)研究提供支持。
- IPython是Python科學(xué)計算標準工具集的組成部分,它可以把很多東西聯(lián)系到一起,有點類似一個增強版的Python shell。目的是為了提高編程,測試和調(diào)試Python代碼的速度,好像很多國外的大學(xué)教授,還有Google大牛都很喜歡用IPython,確實很方便。
五、數(shù)據(jù)處理與分析
pandas:一個非常流行的數(shù)據(jù)處理庫。pandas充分利用了NumPy的ndarray類型,它的兩個關(guān)鍵數(shù)據(jù)結(jié)構(gòu)是Series(一維)和DataFrame(二維)。
modin[14] pandas加速庫,接口語法與pandas高度一致
dask[15] pandas加速庫,接口語法與pandas高度一致
plydata[16] pandas管道語法庫
六、可視化
Pyecharts Echarts 是個由百度開源的數(shù)據(jù)可視化,憑借著良好的交互性,精巧的圖表設(shè)計,得到了眾多開發(fā)者的認可。而 Python 是門富有表達力的語言,很適合用于數(shù)據(jù)處理。當(dāng)數(shù)據(jù)分析遇上數(shù)據(jù)可視化時pyecharts 誕生了
Matplotlib:可高度定制的可視化和繪圖庫。Matplotlib可以繪制正規(guī)圖、散點圖、柱狀圖、等高線圖、餅圖、矢量場圖、網(wǎng)格圖、極坐標圖、3D圖以及添加文字說明等。
Seaborn:基于Matplotlib構(gòu)建的更高級別的可視化庫。與Matplotlib相比,Seaborn改進了外觀,增加了可視化的方法,并且可以使用更少的代碼創(chuàng)建可視化。
七、機器學(xué)習(xí)、深度學(xué)習(xí)和強化學(xué)習(xí)
- scikit-learn:一個頂級的機器學(xué)習(xí)庫。機器學(xué)習(xí)是AI的一個子集,深度學(xué)習(xí)則是機器學(xué)習(xí)的一個子集,專注于神經(jīng)網(wǎng)絡(luò)。
- Keras:最易于使用的深度學(xué)習(xí)庫之一。Keras運行在TensorFlow(谷歌)、CNTK(微軟的深度學(xué)習(xí)認知工具包)或Theano(蒙特利爾大學(xué))之上。
- TensorFlow:由谷歌開發(fā),是使用最廣泛的深度學(xué)習(xí)庫。TensorFlow與GPU(圖形處理單元)或谷歌的定制TPU(Tensor處理單元)配合使用可以獲得最佳的性能。TensorFlow在人工智能和大數(shù)據(jù)分析中有非常重要的地位,因為人工智能和大數(shù)據(jù)對數(shù)據(jù)處理的需求非常巨大。
- OpenAI Gym:用于開發(fā)、測試和比較強化學(xué)習(xí)算法的庫和開發(fā)環(huán)境。
- pytorch Pytorch是torch的python版本,是由Facebook開源的神經(jīng)網(wǎng)絡(luò)框架,專門針對 GPU 加速的深度神經(jīng)網(wǎng)絡(luò)(DNN)編程。Torch 是一個經(jīng)典的對多維矩陣數(shù)據(jù)進行操作的張量(tensor )庫,在機器學(xué)習(xí)和其他數(shù)學(xué)密集型應(yīng)用有廣泛應(yīng)用。與Tensorflow的靜態(tài)計算圖不同,pytorch的計算圖是動態(tài)的,可以根據(jù)計算需要實時改變計算圖。但由于Torch語言采用 Lua,導(dǎo)致在國內(nèi)一直很小眾,并逐漸被支持 Python 的 Tensorflow 搶走用戶。作為經(jīng)典機器學(xué)習(xí)庫 Torch 的端口,PyTorch 為 Python 語言使用者提供了舒適的寫代碼選擇。
八、自然語言處理
- NLTK(Natural Language Toolkit):用于完成自然語言處理(NLP)任務(wù)。
- TextBlob:一個面向?qū)ο蟮腘LP文本處理庫,基于NLTK和模式NLP庫構(gòu)建,簡化了許多NLP任務(wù)。
- Gensim:功能與NLTK類似。通常用于為文檔合集構(gòu)建索引,然后確定另一個文檔與索引中每個文檔的相似程度。
到此這篇關(guān)于Python的這些庫,你知道多少?的文章就介紹到這了,更多相關(guān)Python庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實現(xiàn)擴展內(nèi)置類型的方法分析
這篇文章主要介紹了Python實現(xiàn)擴展內(nèi)置類型的方法,結(jié)合實例形式分析了Python嵌入內(nèi)置類型擴展及子類方式擴展的具體實現(xiàn)技巧,需要的朋友可以參考下2017-10-10Python基于Google?Bard實現(xiàn)交互式聊天機器人
這篇文章主要為大家介紹了Python基于Google?Bard實現(xiàn)交互式聊天機器人示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-03-03使用python-pptx包批量修改ppt格式的實現(xiàn)
今天小編就為大家分享一篇使用python-pptx包批量修改ppt格式的實現(xiàn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02Python基礎(chǔ)類繼承重寫實現(xiàn)原理解析
這篇文章主要介紹了Python基礎(chǔ)類繼承重寫實現(xiàn)原理解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-04-04從零學(xué)Python之入門(二)基本數(shù)據(jù)類型
這是繼“hello world”之后的第二篇入門級基礎(chǔ)知識,以后這個系列會按照入門、進階、精通三個分類進行下去,歡迎高手們來拍磚2014-05-05