15個頂級Python庫谣妻,你必須要試試萄喳!

為什么我喜歡Python?對于初學(xué)者來說蹋半,這是一種簡單易學(xué)的編程語言他巨,另一個原因:大量開箱即用的第三方庫,正是23萬個由用戶提供的軟件包使得Python真正強大和流行减江。

在本文中染突,我挑選了15個最有用的軟件包,介紹它們的功能和特點辈灼。

1. Dash

Dash是比較新的軟件包份企,它是用純Python構(gòu)建數(shù)據(jù)可視化app的理想選擇,因此特別適合處理數(shù)據(jù)的任何人巡莹。Dash是Flask司志,Plotly.js和React.js的混合體。

2. Pygame

Pygame是SDL多媒體庫的Python裝飾器降宅,SDL(Simple DirectMedia Layer)是一個跨平臺開發(fā)庫骂远,旨在提供對以下內(nèi)容的低級接口:

音頻

鍵盤

鼠標

游戲桿

基于OpenGL和Direct3D的圖形硬件

Pygame具有高度的可移植性,幾乎可以在所有平臺和操作系統(tǒng)上運行腰根。盡管它具有完善的游戲引擎激才,但您也可以使用此庫直接從Python腳本播放MP3文件。

3. Pillow

Pillow專門用于處理圖像,您可以使用該庫創(chuàng)建縮略圖瘸恼,在文件格式之間轉(zhuǎn)換劣挫,旋轉(zhuǎn),應(yīng)用濾鏡钞脂,顯示圖像等等揣云。如果您需要對許多圖像執(zhí)行批量操作,這是理想的選擇冰啃。

為了快速了解它,看以下代碼示例(加載并渲染圖片):

4. Colorama

Colorama允許你在終端使用顏色刘莹,非常適合Python腳本阎毅,文檔簡短而有趣权逗,可以在Colorama PyPI頁面上找到佳镜。

5. JmesPath

在Python中使用JSON非常容易,因為JSON在Python字典上的映射非常好在讶。此外抢肛,Python帶有自己出色的json庫狼钮,用于解析和創(chuàng)建JSON。對我來說捡絮,這是它最好的功能之一熬芜。如果我需要使用JSON,可以考慮使用Python福稳。

JMESPath使Python處理JSON更加容易涎拉,它允許您明確的地指定如何從JSON文檔中提取元素。以下是一些基本示例的圆,可讓您對它的功能有所了解:

6. Requests

Requests建立在世界上下載量最大的Python庫urllib3上鼓拧,它令Web請求變得非常簡單,功能強大且用途廣泛越妈。

以下代碼示例說明requests的使用是多么簡單季俩。

Requests可以完成您能想到的所有高級工作,例如:

認證

使用cookie

執(zhí)行POST梅掠,PUT酌住,DELETE等

使用自定義證書

使用會話Session

使用代理

7. Simplejson

Python中的本地json模塊有什么問題?沒有瓤檐!實際上赂韵,Python的json是simplejson。意思是挠蛉,Python采用了simplejson的一個版本祭示,并將其合并到每個發(fā)行版中。但是使用simplejson具有一些優(yōu)點:

它適用于更多Python版本。

它比Python隨附的版本更新頻率更高质涛。

它具有用C編寫的(可選)部分稠歉,因此非常快速汇陆。

由于這些事實怒炸,您經(jīng)常會在使用JSON的腳本中看到以下內(nèi)容:

我將只使用默認的json,除非您特別需要:

速度

標準庫中沒有的東西

Simplejson比json快很多毡代,因為它用C實現(xiàn)一些關(guān)鍵部分阅羹。除非您正在處理數(shù)百萬個JSON文件,否則您不會對這種速度感興趣教寂。

8. Emoji

Emoji庫非常有意思捏鱼,但并非每個人都喜歡表情包,分析視角媒體數(shù)據(jù)時酪耕,Emoji包非常有用导梆。

以下是簡單的代碼示例:

9. Chardet

您可以使用chardet模塊來檢測文件或數(shù)據(jù)流的字符集。例如迂烁,這在分析大量隨機文本時很有用看尼。但是,當您不知道字符集是什么時盟步,也可以在處理遠程下載的數(shù)據(jù)時使用它藏斩。

10. Python-dateutil

python-dateutil模塊提供了對標準datetime模塊的強大擴展。我的經(jīng)驗是址芯,常規(guī)的Python日期時間功能在哪里結(jié)束灾茁,而python-dateutil就出現(xiàn)了。

您可以使用此庫做很多很棒的事情谷炸。我將這些示例限制為我發(fā)現(xiàn)特別有用的示例:模糊分析日志文件中的日期北专,例如:

有關(guān)更多功能,請參見完整文檔旬陡,例如:

計算相對增量(下個月拓颓,明年,下周一描孟,該月的最后一周等)和兩個給定日期對象之間的相對增量驶睦。

使用iCalendar規(guī)范的超集,根據(jù)重復(fù)規(guī)則計算日期匿醒。

tzfile文件(/ etc / localtime场航,/ usr / share / zoneinfo等)的時區(qū)(tzinfo)實現(xiàn),TZ環(huán)境字符串(所有已知格式)廉羔,iCalendar格式文件溉痢,給定范圍(在相對增量的幫助下),本地計算機 時區(qū),固定偏移時區(qū)孩饼,UTC時區(qū)和基于Windows注冊表的時區(qū)髓削。

基于奧爾森數(shù)據(jù)庫的內(nèi)部最新世界時區(qū)信息。

使用Western镀娶,Orthodox或Julian算法計算任意一年的復(fù)活節(jié)周日日期立膛。

11. 進度條:progress和tqdm

這里有點作弊,因為這是兩個包梯码,但忽略其中之一是不公平的宝泵。

您可以創(chuàng)建自己的進度條,這也許很有趣忍些,但是使用progress或tqdm程序包更快鲁猩,更不容易出錯。

progress

借助這個軟件包罢坝,您可以輕松創(chuàng)建進度條:

img

tqdm

tqdm的功能大致相同,但似乎是最新的搅窿。首先以gif動畫形式進行一些演示:

12. IPython

我確定您知道Python的交互式外殼嘁酿,這是運行Python的好方法。但是您也知道IPython shell嗎男应?如果您經(jīng)常使用交互式外殼程序闹司,但您不了解IPython,則應(yīng)該檢查一下沐飘!

增強的IPython shell提供的一些功能包括:

全面的對象自省游桩。

輸入歷史記錄,跨會話持續(xù)存在耐朴。

在具有自動生成的引用的會話期間緩存輸出結(jié)果借卧。

制表符補全,默認情況下支持python變量和關(guān)鍵字筛峭,文件名和函數(shù)關(guān)鍵字的補全铐刘。

“魔術(shù)”命令,用于控制環(huán)境并執(zhí)行許多與IPython或操作系統(tǒng)相關(guān)的任務(wù)影晓。

會話記錄和重新加載镰吵。

對pdb調(diào)試器和Python分析器的集成訪問。

IPython的一個鮮為人知的功能:它的體系結(jié)構(gòu)還允許并行和分布式計算挂签。

IPython是Jupyter Notebook的核心疤祭,它是一個開放源代碼Web應(yīng)用程序,可讓您創(chuàng)建和共享包含實時代碼饵婆,方程式勺馆,可視化效果和敘述文本的文檔。

13. Homeassistant

我喜歡家庭自動化。這對我來說是一種嗜好谓传,但我至今仍對此深表歉意蜈项,因為它現(xiàn)在控制著我們房屋的大部分。我使用Home Assistant將房子中的所有系統(tǒng)捆綁在一起续挟。盡管它確實是一個完整的應(yīng)用程序紧卒,但是您也可以將其安裝為Python PyPI軟件包。

我們的大多數(shù)燈具都是自動化的诗祸,百葉窗也是如此跑芳。

我監(jiān)視我們的天然氣用量,電力用量和產(chǎn)量(太陽能電池板)直颅。

我可以跟蹤大多數(shù)電話的位置博个,并在進入一個區(qū)域時開始操作,例如當我回家時打開車庫燈功偿。

它還可以控制我們所有的娛樂系統(tǒng)盆佣,例如三星電視和Sonos揚聲器。

它能夠自動發(fā)現(xiàn)網(wǎng)絡(luò)上的大多數(shù)設(shè)備械荷,因此上手起來非常容易共耍。

我已經(jīng)每天使用Home Assistant已有3年了,它仍處于測試階段吨瞎,但這是我嘗試過的所有平臺中最好的平臺痹兜。它能夠集成和控制各種設(shè)備和協(xié)議,并且都是免費和開源的颤诀。

如果您有興趣將房屋自動化字旭,請確保有機會!如果您想了解更多崖叫,請訪問他們的官方網(wǎng)站遗淳。如果可以,請將其安裝在Raspberry Pi上归露。到目前為止洲脂,這是最簡單,最安全的入門方法剧包。我將其安裝在Docker容器內(nèi)功能更強大的服務(wù)器上恐锦。

14. Flask

Flask是我的入門庫,用于創(chuàng)建快速的Web服務(wù)或簡單的網(wǎng)站疆液。這是一個微框架一铅,這意味著Flask旨在使核心保持簡單但可擴展。有700多個官方和社區(qū)擴展堕油。

如果您知道自己將開發(fā)一個大型的Web應(yīng)用程序潘飘,則可能需要研究一個更完整的框架肮之。該類別中最受歡迎的是Django。

15. BeautifulSoup

如果您從網(wǎng)站上提取了一些HTML卜录,則需要對其進行解析以獲取實際所需的內(nèi)容戈擒。Beautiful Soup是一個Python庫,用于從HTML和XML文件中提取數(shù)據(jù)艰毒。它提供了導(dǎo)航筐高,搜索和修改解析樹的簡單方法。它非常強大丑瞧,即使損壞了柑土,也能夠處理各種HTML。相信我绊汹,HTML經(jīng)常被破壞稽屏,所以這是一個非常強大的功能。

它的一些主要功能:

Beautiful Soup會自動將傳入文檔轉(zhuǎn)換為Unicode西乖,將傳出文檔轉(zhuǎn)換為UTF-8狐榔。您無需考慮編碼。

Beautiful Soup位于流行的Python解析器(如lxml和html5lib)的頂部获雕,使您可以嘗試不同的解析策略或提高靈活性荒叼。

BeautifulSoup會解析您提供的任何內(nèi)容,并為您做遍歷樹的工作典鸡。您可以將其告訴“查找所有鏈接”,或“查找?guī)в写煮w的表格標題坏晦,然后給我該文字萝玷。”

好了昆婿,今天的分享就到這球碉,如果你對Python感興趣,歡迎加入我們【python學(xué)習(xí)交流裙】仓蛆,免費領(lǐng)取學(xué)習(xí)資料和源碼睁冬。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市看疙,隨后出現(xiàn)的幾起案子豆拨,更是在濱河造成了極大的恐慌,老刑警劉巖能庆,帶你破解...
    沈念sama閱讀 218,204評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件施禾,死亡現(xiàn)場離奇詭異,居然都是意外死亡搁胆,警方通過查閱死者的電腦和手機弥搞,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評論 3 395
  • 文/潘曉璐 我一進店門邮绿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人攀例,你說我怎么就攤上這事船逮。” “怎么了粤铭?”我有些...
    開封第一講書人閱讀 164,548評論 0 354
  • 文/不壞的土叔 我叫張陵挖胃,是天一觀的道長。 經(jīng)常有香客問我承耿,道長冠骄,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,657評論 1 293
  • 正文 為了忘掉前任加袋,我火速辦了婚禮凛辣,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘职烧。我一直安慰自己扁誓,他們只是感情好,可當我...
    茶點故事閱讀 67,689評論 6 392
  • 文/花漫 我一把揭開白布蚀之。 她就那樣靜靜地躺著蝗敢,像睡著了一般。 火紅的嫁衣襯著肌膚如雪足删。 梳的紋絲不亂的頭發(fā)上寿谴,一...
    開封第一講書人閱讀 51,554評論 1 305
  • 那天,我揣著相機與錄音失受,去河邊找鬼讶泰。 笑死,一個胖子當著我的面吹牛拂到,可吹牛的內(nèi)容都是我干的痪署。 我是一名探鬼主播,決...
    沈念sama閱讀 40,302評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼兄旬,長吁一口氣:“原來是場噩夢啊……” “哼狼犯!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起领铐,我...
    開封第一講書人閱讀 39,216評論 0 276
  • 序言:老撾萬榮一對情侶失蹤悯森,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后罐孝,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體呐馆,經(jīng)...
    沈念sama閱讀 45,661評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,851評論 3 336
  • 正文 我和宋清朗相戀三年莲兢,在試婚紗的時候發(fā)現(xiàn)自己被綠了汹来。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片续膳。...
    茶點故事閱讀 39,977評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖收班,靈堂內(nèi)的尸體忽然破棺而出坟岔,到底是詐尸還是另有隱情,我是刑警寧澤摔桦,帶...
    沈念sama閱讀 35,697評論 5 347
  • 正文 年R本政府宣布社付,位于F島的核電站,受9級特大地震影響邻耕,放射性物質(zhì)發(fā)生泄漏鸥咖。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,306評論 3 330
  • 文/蒙蒙 一兄世、第九天 我趴在偏房一處隱蔽的房頂上張望啼辣。 院中可真熱鬧,春花似錦御滩、人聲如沸鸥拧。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽富弦。三九已至,卻和暖如春氛驮,著一層夾襖步出監(jiān)牢的瞬間腕柜,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評論 1 270
  • 我被黑心中介騙來泰國打工矫废, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留媳握,地道東北人。 一個月前我還...
    沈念sama閱讀 48,138評論 3 370
  • 正文 我出身青樓磷脯,卻偏偏與公主長得像,于是被迫代替她去往敵國和親娩脾。 傳聞我的和親對象是個殘疾皇子赵誓,可洞房花燭夜當晚...
    茶點故事閱讀 44,927評論 2 355

推薦閱讀更多精彩內(nèi)容