溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢

發(fā)布時(shí)間:2021-10-09 15:54:07 來(lái)源:億速云 閱讀:105 作者:柒染 欄目:編程語(yǔ)言

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢,相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。

 為什么我喜歡 Python ?

對(duì)于初學(xué)者來(lái)說(shuō),這是一種簡(jiǎn)單易學(xué)的編程語(yǔ)言;另一個(gè)原因:大量開箱即用的第三方庫(kù),正是 23 萬(wàn)個(gè)由用戶提供的軟件包使得 Python 真正強(qiáng)大和流行

在本文中,我挑選了15個(gè)最有用的軟件包,介紹它們的功能和特點(diǎn)

1. Dash

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

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢

2. Pygame

Pygame 是 SDL 多媒體庫(kù)的 Python 裝飾器,SDL(Simple DirectMedia Layer)是一個(gè)跨平臺(tái)開發(fā)庫(kù),旨在提供對(duì)以下內(nèi)容的低級(jí)接口:

  •  音頻

  •  鍵盤

  •  鼠標(biāo)

  •  游戲桿

  •  基于 OpenGL 和 Direct3D 的圖形硬件

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

3. Pillow

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

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

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢

4. Colorama

Colorama 允許你在終端使用顏色,非常適合 Python 腳本,文檔簡(jiǎn)短而有趣,可以在 Colorama PyPI 頁(yè)面上找到。

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢

5. JmesPath

在Python中使用 JSON 非常容易,因?yàn)?JSON 在 Python 字典上的映射非常好。此外,Python 帶有自己出色的json庫(kù),用于解析和創(chuàng)建JSON。對(duì)我來(lái)說(shuō),這是它最好的功能之一。如果我需要使用JSON,可以考慮使用Python。

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

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢

6. Requests

Requests建立在世界上下載量最大的Python庫(kù)urllib3上,它令Web請(qǐng)求變得非常簡(jiǎn)單,功能強(qiáng)大且用途廣泛。

以下代碼示例說(shuō)明requests的使用是多么簡(jiǎn)單。

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢

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

  •  認(rèn)證

  •  使用cookie

  •  執(zhí)行POST,PUT,DELETE等

  •  使用自定義證書

  •  使用會(huì)話Session

  •  使用代理

7. Simplejson

Python中的本地json模塊有什么問(wèn)題?沒有!實(shí)際上,Python的json是simplejson。意思是,Python采用了simplejson的一個(gè)版本,并將其合并到每個(gè)發(fā)行版中。但是使用simplejson具有一些優(yōu)點(diǎn):

它適用于更多Python版本。

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

它具有用C編寫的(可選)部分,因此非??焖?。

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

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢

我將只使用默認(rèn)的json,除非您特別需要:

速度

標(biāo)準(zhǔn)庫(kù)中沒有的東西

Simplejson比json快很多,因?yàn)樗肅實(shí)現(xiàn)一些關(guān)鍵部分。除非您正在處理數(shù)百萬(wàn)個(gè)JSON文件,否則您不會(huì)對(duì)這種速度感興趣。

8. Emoji

Emoji庫(kù)非常有意思,但并非每個(gè)人都喜歡表情包,分析視角媒體數(shù)據(jù)時(shí),Emoji包非常有用。

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢

以下是簡(jiǎn)單的代碼示例:

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢

9. Chardet

您可以使用chardet模塊來(lái)檢測(cè)文件或數(shù)據(jù)流的字符集。例如,這在分析大量隨機(jī)文本時(shí)很有用。但是,當(dāng)您不知道字符集是什么時(shí),也可以在處理遠(yuǎn)程下載的數(shù)據(jù)時(shí)使用它。

10. Python-dateutil

python-dateutil模塊提供了對(duì)標(biāo)準(zhǔn)datetime模塊的強(qiáng)大擴(kuò)展。我的經(jīng)驗(yàn)是,常規(guī)的Python日期時(shí)間功能在哪里結(jié)束,而python-dateutil就出現(xiàn)了。

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

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢

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

計(jì)算相對(duì)增量(下個(gè)月,明年,下周一,該月的最后一周等)和兩個(gè)給定日期對(duì)象之間的相對(duì)增量。

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

tzfile文件(/ etc / localtime,/ usr / share / zoneinfo等)的時(shí)區(qū)(tzinfo)實(shí)現(xiàn),TZ環(huán)境字符串(所有已知格式),iCalendar格式文件,給定范圍(在相對(duì)增量的幫助下),本地計(jì)算機(jī) 時(shí)區(qū),固定偏移時(shí)區(qū),UTC時(shí)區(qū)和基于Windows注冊(cè)表的時(shí)區(qū)。

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

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

11. 進(jìn)度條:progress和tqdm

這里有點(diǎn)作弊,因?yàn)檫@是兩個(gè)包,但忽略其中之一是不公平的。

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

  •  progress

借助這個(gè)軟件包,您可以輕松創(chuàng)建進(jìn)度條:

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢

  •  tqdm

tqdm的功能大致相同,但似乎是最新的。首先以gif動(dòng)畫形式進(jìn)行一些演示:

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢

12. IPython

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢

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

增強(qiáng)的IPython shell提供的一些功能包括:

  •  全面的對(duì)象自省。

  •  輸入歷史記錄,跨會(huì)話持續(xù)存在。

  •  在具有自動(dòng)生成的引用的會(huì)話期間緩存輸出結(jié)果。

  •  制表符補(bǔ)全,默認(rèn)情況下支持python變量和關(guān)鍵字,文件名和函數(shù)關(guān)鍵字的補(bǔ)全。

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

  •  會(huì)話記錄和重新加載。

  •  對(duì)pdb調(diào)試器和Python分析器的集成訪問(wèn)。

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

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

13. Homeassistant

我喜歡家庭自動(dòng)化。這對(duì)我來(lái)說(shuō)是一種嗜好,但我至今仍對(duì)此深表歉意,因?yàn)樗F(xiàn)在控制著我們房屋的大部分。我使用Home Assistant將房子中的所有系統(tǒng)捆綁在一起。盡管它確實(shí)是一個(gè)完整的應(yīng)用程序,但是您也可以將其安裝為Python PyPI軟件包。

讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢

我們的大多數(shù)燈具都是自動(dòng)化的,百葉窗也是如此。

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

我可以跟蹤大多數(shù)電話的位置,并在進(jìn)入一個(gè)區(qū)域時(shí)開始操作,例如當(dāng)我回家時(shí)打開車庫(kù)燈。

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

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

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

如果您有興趣將房屋自動(dòng)化,請(qǐng)確保有機(jī)會(huì)!如果您想了解更多,請(qǐng)?jiān)L問(wèn)他們的官方網(wǎng)站。如果可以,請(qǐng)將其安裝在Raspberry Pi上。到目前為止,這是最簡(jiǎn)單,最安全的入門方法。我將其安裝在Docker容器內(nèi)功能更強(qiáng)大的服務(wù)器上。

14. Flask

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

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

15. BeautifulSoup

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

它的一些主要功能:

  •  Bautiful Soup會(huì)自動(dòng)將傳入文檔轉(zhuǎn)換為Unicode,將傳出文檔轉(zhuǎn)換為UTF-8。您無(wú)需考慮編碼。

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

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

看完上述內(nèi)容,你們掌握讓新手愛不釋手的Python高級(jí)庫(kù)有哪些呢的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI