為什麼我喜歡 Python ? 對於初學者來說,這是一種簡單易學的程式語言;另一個原因:大量開箱即用的第三方函式庫,正是23 萬個由用戶提供的軟體包使得Python 真正強大且受歡迎。
#Dash 是一個比較新的軟體包,它是用純Python 構建資料視覺化app 的理想選擇,因此特別適合處理資料的任何人。 Dash 是 Flask,Plotly.js 和 React.js 的混合體。
Pygame 是SDL 多媒體庫的Python 裝飾器,SDL(Simple DirectMedia Layer)是一個跨平台開發庫,旨在提供對以下內容的低階介面:
#音訊
鍵盤
########################## #########遊戲桿#######
基於OpenGL 和Direct3D 的圖形硬體
Pygame 具有高度的可移植性,幾乎可以在所有平台和作業系統上運行。儘管它具有完善的遊戲引擎,但您也可以使用此程式庫直接從 Python 腳本播放 MP3 檔案。
#Pillow 專門用於處理映像,您可以使用該程式庫建立縮略圖,在檔案格式之間轉換,旋轉,套用濾鏡,顯示影像等等。如果您需要對許多影像執行批次操作,這是理想的選擇。
為了快速了解它,請看以下程式碼範例(載入並渲染):
Colorama 讓你在終端機上使用顏色,非常適合Python 腳本,文件簡短而有趣,可以在Colorama PyPI 頁面上找到。
在Python中使用JSON 非常容易,因為JSON 在Python 字典上的映射非常好。此外,Python 附帶自己出色的json庫,用於解析和創建JSON。對我來說,這是它最好的功能之一。如果我需要使用JSON,可以考慮使用Python。
JMESPath讓Python處理JSON更加容易,它允許您明確的地指定如何從JSON文件中提取元素。以下是一些基本範例,可讓您對它的功能有所了解:
Requests建立在世界上下載量最大的Python庫urllib3上,它讓Web請求變得非常簡單,功能強大且用途廣泛。
以下程式碼範例說明requests的使用是多麼簡單。
Requests可以完成您能想到的所有高階工作,例如:
##認證
使用cookie
#執行POST,PUT,DELETE等
#Python中的本地json模組有什麼問題?沒有!事實上,Python的json是simplejson。意思是,Python採用了simplejson的一個版本,並將其合併到每個發行版中。但是使用simplejson具有一些優點:
我將只使用預設的json,除非您特別需要:
#標準函式庫中沒有的東西
Simplejson比json快很多,因為它用C實作一些關鍵部分。除非您正在處理數百萬個JSON文件,否則您不會對這種速度感興趣。
#Emoji函式庫非常有意思,但並非每個人都喜歡表情包,分析視角媒體資料時,Emoji套件非常有用。
以下是簡單的程式碼範例:
您可以使用chardet模組來偵測檔案或資料流的字元集。例如,這在分析大量隨機文字時很有用。但是,當您不知道字元集是什麼時,也可以在處理遠端下載的資料時使用它。
python-dateutil模組提供了標準datetime模組的強大擴展。我的經驗是,常規的Python日期時間功能在哪裡結束,而python-dateutil就出現了。
您可以使用此程式庫做很多很棒的事情。我將這些範例限制為我發現特別有用的範例:模糊分析日誌檔案中的日期,例如:
有關更多功能,請參見完整文檔,例如:
#計算相對增量(下個月,明年,下週一,該月的最後一周等)和兩個給定日期物件之間的相對增量。
使用iCalendar規範的超集,依照重複規則計算日期。
tzfile檔案(/ etc / localtime,/ usr / share / zoneinfo等)的時區(tzinfo)實現,TZ環境字串(所有已知格式),iCalendar格式文件,給定範圍(在相對增量的幫助下),本地電腦時區,固定偏移時區,UTC時區和基於Windows註冊表的時區。
基於奧爾森資料庫的內部最新世界時區資訊。
使用Western,Orthodox或Julian演算法計算任何一年的復活節週日日期。
這裡有點作弊,因為這是兩個包,但忽略其中之一是不公平的。
您可以建立自己的進度條,這也許很有趣,但是使用progress或tqdm程式包更快,更不容易出錯。
progress
借助這個軟體包,您可以輕鬆建立進度條:
imgtqdm
tqdm的功能大致相同,但似乎是最新的。首先以gif動畫形式進行一些示範:
全面的物件自省。
輸入歷史記錄,跨會話持續存在。
在具有自動產生的參考的會話期間快取輸出結果。
製表符補全,預設支援python變數和關鍵字,檔案名稱和函數關鍵字的補全。
「魔術」指令,用於控制環境並執行許多與IPython或作業系統相關的任務。
會話記錄和重新載入。
對pdb偵錯器和Python分析器的整合存取。
IPython的一個鮮為人知的功能:它的體系結構也允許並行和分散式計算。
#我喜歡家庭自動化。這對我來說是一種嗜好,但我仍然對此深表歉意,因為它現在控制著我們房屋的大部分。我使用Home Assistant將房子中的所有系統捆綁在一起。儘管它確實是一個完整的應用程序,但是您也可以將其安裝為Python PyPI軟體包。
我們的大多數燈具都是自動化的,百葉窗也是如此。
我監視我們的天然氣用量,電力用量和產量(太陽能板)。
我可以追蹤大多數電話的位置,並在進入一個區域時開始操作,例如當我回家時打開車庫燈。
它還可以控制我們所有的娛樂系統,例如三星電視和Sonos揚聲器。
它能夠自動發現網路上的大多數設備,因此上手起來非常容易。
我已經每天使用Home Assistant已有3年了,它仍處於測試階段,但這是我嘗試過的所有平台中最好的平台。它能夠整合和控制各種設備和協議,並且都是免費和開源的。
如果您有興趣將房屋自動化,請確保有機會!如果您想了解更多,請訪問他們的官方網站。如果可以,請將其安裝在Raspberry Pi上。到目前為止,這是最簡單,最安全的入門方法。我將其安裝在Docker容器內更強大的伺服器上。
#Flask是我的入門庫,用於建立快速的網路服務或簡單的網站。這是一個微框架,這意味著Flask旨在使核心保持簡單但可擴展。有700多個官方和社群擴展。
如果您知道自己將開發一個大型的網路應用程序,則可能需要研究一個更完整的框架。這個類別中最受歡迎的是Django。
如果您從網站上提取了一些HTML,則需要對其進行解析以獲取實際所需的內容。 Beautiful Soup是一個Python庫,用於從HTML和XML檔案中提取資料。它提供了導航,搜尋和修改解析樹的簡單方法。它非常強大,即使損壞了,也能夠處理各種HTML。相信我,HTML經常被破壞,所以這是一個非常強大的功能。
它的一些主要功能:
Beautiful Soup會自動將傳入文件轉換為Unicode,將傳出文件轉換為UTF-8。您無需考慮編碼。
Beautiful Soup位於流行的Python解析器(如lxml和html5lib)的頂部,讓您可以嘗試不同的解析策略或提高靈活性。
BeautifulSoup會解析您提供的任何內容,並為您做遍歷樹的工作。您可以將其告訴“查找所有鏈接”,或“查找帶有粗體的表格標題,然後給我該文字。”
以上是強烈建議15個事半功倍的Python高級庫的詳細內容。更多資訊請關注PHP中文網其他相關文章!