首頁 後端開發 Python教學 總結2020年最強Python庫

總結2020年最強Python庫

Jan 05, 2021 am 10:06 AM
linux python 後端 程式設計師 運維

2020年已經過去了,國外的一家專門提供Python服務的網站Troy Labs,盤點出了2020年發布的Python庫Top10。

上榜的有FastAPI的升級版Typer、將CLI變成彩色的Rich、基於GUI框架的Dear PyGui、還有精簡錯誤資訊的PrettyErrors……總有一款是你想要的。

下面就讓我們一起來看看吧~

總結2020年最強Python庫

#推薦(免費):Python教學(影片)

1、Typer

Typer跟FastAPI的原理相同,都是Python上用來建構API服務的一個高效能架構。

總結2020年最強Python庫

它是FastAPI的升級版,不僅能夠準確地記錄程式碼,還能夠輕鬆地進行CLI驗證。

Typer易於學習和使用,不需要使用者閱讀複雜的教學文件即可上手。支援編輯器(如VSCode)程式碼自動補全,提高開發人員的開發效率,減少bug的數量。

其次,Typer還能配合命令列神器Click使用,就可以利用Click的優點和插件,實現更複雜的功能。

開源位址:
https://github.com/tiangolo/t...

2、Rich

誰規定CLI介面一定得是黑白的?它也可以是彩色的。

Rich API不僅能夠在終端輸出提供豐富的彩色文字和精美的格式,還提供了精美的表格、進度條、編輯器、追蹤器、語法高亮等。如下圖所示。

總結2020年最強Python庫

它也可以安裝在Python REPL上,所有的資料結構都可以漂亮地輸出或標註。

總而言之,它是彩色的、漂亮的、強大的。

Rich相容性也不錯,適用於Linux,Mac和Windows等多種系統。真彩色/表情符號可與新的Windows終端機一起使用。

但請注意,Rich必須要Python 3.6.1或以上版本。

開源位址:
https://github.com/willmcguga...

#3、Dear PyGui

如上圖所示,雖然終端應用程式可以做成很漂亮的樣子。但是,你可能還需要一個真正的GUI。

總結2020年最強Python庫

Dear PyGui是一個方便使用、功能強大的Python GUI框架。但是它與其他的Python GUI有著根本上的不同。

它使用了即時模式範式和電腦的GPU來實現動態介面。即時模式範式在電玩遊戲中非常流行,這意味著它的動態GUI不需要保留任何數據,而是逐幀獨立繪製的。同時,它也使用GPU來建構動態介面。

總結2020年最強Python庫

Dear PyGui還可以繪圖、創建主題、創建2D遊戲,還擁有一些小工具,比如說內建文件、日誌記錄、原始碼檢視器之類的,這些小工具可以協助App的開發。

支援它的系統有:Windows 10(DirectX 11),Linux(OpenGL 3)和macOS(Metal)等。

開源位址:
https://github.com/hoffstadt/...

4、PrettyErrors

PrettyErrors是個精簡Python錯誤訊息的工具,特色是介面十分簡潔友善。

它最顯著的功能是支援在終端進行彩色輸出,標註出文件棧踪跡,發現錯誤信息,過濾掉冗餘信​​息,提取出關鍵部分,並且進行彩色標註,從而提高開發者的效率。

總結2020年最強Python庫

而且它可以不用安裝,直接被導入專案中使用,但是需要先配置一些參數,其導入和配置的參數如下:

總結2020年最強Python庫

#開源位址:
https://github.com/onelivesle...

5、Diagrams

程式設計師在在程式設計的時候,有時候需要跟同事解釋他設計的程式碼之間複雜的結構關係,然而這不是一兩句話能說清楚的,需要畫表或做脈絡圖。

一般情況下,程式設計師使用GUI工具處理圖表,並將文稿進行視覺化處理。但還有更好的方法,比如說​​使用Diagrams函式庫。

Diagrams讓不需要任何設計類別工具,直接在Python程式碼中繪製雲端系統結構。它們的圖示來自多家雲端服務商,包括AWS, Azure, GCP等。

只要幾行程式碼,就可以簡單地創造出箭頭符號和結構圖。

總結2020年最強Python庫

因為它使用Graphviz來渲染圖,所以還需要先安裝好Graphviz。

開源位址:
https://github.com/mingrammer...

6、Hydra and OmegaConf

在做機器學習專案的時候,需要做一大堆的環境配置工作。因此,在一些複雜的應用程式中,組態管理工作也相應變得複雜。

Hydra可以讓設定工作變得簡單。它能夠從命令列或設定檔中覆蓋部分出來,無需維護相似的配置文件,用組合的方式進行配置,從而加快了實驗運行速度。

總結2020年最強Python庫

Hydra相容性強,擁有包含插件的結構,能夠很好地與開發者的操作檔案融合。它的插件還可以實現直接通過命令列,就把程式碼發佈到AWS或其他雲端系統。

Hydra也離不開OmegaConf,兩者關係密不可分,OmegaConf為Hydra的分層配置系統提供了協同的API,二者協同運作可支援YAML、設定檔、物件、CLI參數等。

開源位址:
https://github.com/facebookre...
https://github.com/omry/omega...

7.PyTorch Lightning

PyTorch Lightning也是Facebook的一個研究成果。它是一個輕巧的PyTorch包裝器,用於高性能AI研究,其最重要的特徵是能夠解析PyTorch程式碼,讓程式碼研究成分和工程成分的分離。

總結2020年最強Python庫

它的擴充模型可以在任何硬體(CPU、GPU、TPU)上運行,且容易被複製,刪除了大量的檔案樣本,保持了自身的靈活性,運轉速度快。

Lightning能夠讓DL / ML研究的40多個部分自動化,例如GPU訓練、分散式GPU(叢集)訓練、TPU訓練等等…

因為Lightning將可以將檔案自動匯出到ONNX或TorchScript,所以它適用於進行快速推理的AI研究員、BERT或自監督學習的研究團隊等。

開源位址:
https://github.com/PyTorchLig...

8、Hummingbird

Hummingbird是微軟的一項研究成果,它能夠將已經訓練好的ML模型彙編成張量計算,因此不需要設計新的模型。

也讓使用者可以使用神經網路框架(例如PyTorch)來加速傳統的ML模型。

總結2020年最強Python庫

它的推理API跟sklearn範例十分相似,都可以重複使用現有的程式碼,但是它是用Hummingbird產生的程式碼去實現的。

Hummingbird也在Sklearn API之後提供了一個方便的統一推理API。這樣就可以將Sklearn模型與Hummingbird產生的模型互換,而無需更改推理程式碼。

它之所以被重點關注,也因為它能夠支援多種多樣的模型和格式。

到目前為止,Hummingbird支援PyTorch、TorchScript、ONNX和TVM等各種ML模型。

開源位址:
https://github.com/microsoft/...

#9、HiPlot

##因為ML模型變得越來越複雜,還有很多超參數,於是就需要用到HiPlot。 HiPlot是今年3月Facebook發行的一個函式庫,主要用於處理高維度資料。

Facebook AI透過數十個超參數和10萬多個實驗,利用HiPlot,來分析深度神經網路。

它是用平行圖和其他的圖像方式,幫助AI研究者發現高維度資料的相關性和模型,是一款輕​​巧的互動式視覺化工具。

總結2020年最強Python庫

HiPlot與其他視覺化工具相比,有其特有的優點:

首先,它的互動性強,因為平行圖是互動的,所以能夠滿足多種情況下的影像視覺化。

其次,它簡單易用,可以透過IPython Notebook或透過帶有「 hiplot」指令的服務直接使用。

它還有具有可擴充性。預設情況下,HiPlot的Web服務可以解析CSV或JSON文件,也可以為其提供自訂Python解析器,將實驗轉換為HiPlot實驗。

開源位址:

https://github.com/facebookre...
參考連結:
https://ai.facebook.com/blog/...

10、Scalene

Scalene是一個用於Python腳本的CPU和記憶體分析器,能夠正確處理多執行緒程式碼,還能區分Python程式碼和本機程式碼的運行時間。

你不需要修改程式碼,只要執行Scalene腳本,它就會產生一個文字形式的報告,顯示出每一行程式碼的CPU和記憶體的使用情況。透過這個文本報告,開發人員可以提高程式碼的效率。

總結2020年最強Python庫

Scalene的速度快、準確率高,也能夠對高耗能的程式碼行進行標註。

開源位址
https://github.com/emeryberge...

除了以上10個,還有多個高效能的Python庫被點名了,例如Norfair、 Quart、Alibi-detect、Einops…等等,詳情查看底部連結。

那麼,你今年有發現好用的Python庫嗎?

如果有的話,請在留言區一起分享一下~

以上是總結2020年最強Python庫的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1318
25
PHP教程
1268
29
C# 教程
1248
24
PHP和Python:解釋了不同的範例 PHP和Python:解釋了不同的範例 Apr 18, 2025 am 12:26 AM

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。

在PHP和Python之間進行選擇:指南 在PHP和Python之間進行選擇:指南 Apr 18, 2025 am 12:24 AM

PHP適合網頁開發和快速原型開發,Python適用於數據科學和機器學習。 1.PHP用於動態網頁開發,語法簡單,適合快速開發。 2.Python語法簡潔,適用於多領域,庫生態系統強大。

Linux體系結構:揭示5個基本組件 Linux體系結構:揭示5個基本組件 Apr 20, 2025 am 12:04 AM

Linux系統的五個基本組件是:1.內核,2.系統庫,3.系統實用程序,4.圖形用戶界面,5.應用程序。內核管理硬件資源,系統庫提供預編譯函數,系統實用程序用於系統管理,GUI提供可視化交互,應用程序利用這些組件實現功能。

PHP和Python:深入了解他們的歷史 PHP和Python:深入了解他們的歷史 Apr 18, 2025 am 12:25 AM

PHP起源於1994年,由RasmusLerdorf開發,最初用於跟踪網站訪問者,逐漸演變為服務器端腳本語言,廣泛應用於網頁開發。 Python由GuidovanRossum於1980年代末開發,1991年首次發布,強調代碼可讀性和簡潔性,適用於科學計算、數據分析等領域。

Golang vs. Python:性能和可伸縮性 Golang vs. Python:性能和可伸縮性 Apr 19, 2025 am 12:18 AM

Golang在性能和可擴展性方面優於Python。 1)Golang的編譯型特性和高效並發模型使其在高並發場景下表現出色。 2)Python作為解釋型語言,執行速度較慢,但通過工具如Cython可優化性能。

Python與C:學習曲線和易用性 Python與C:學習曲線和易用性 Apr 19, 2025 am 12:20 AM

Python更易學且易用,C 則更強大但複雜。 1.Python語法簡潔,適合初學者,動態類型和自動內存管理使其易用,但可能導致運行時錯誤。 2.C 提供低級控制和高級特性,適合高性能應用,但學習門檻高,需手動管理內存和類型安全。

laravel安裝代碼 laravel安裝代碼 Apr 18, 2025 pm 12:30 PM

要安裝 Laravel,需依序進行以下步驟:安裝 Composer(適用於 macOS/Linux 和 Windows)安裝 Laravel 安裝器創建新項目啟動服務訪問應用程序(網址:http://127.0.0.1:8000)設置數據庫連接(如果需要)

Python vs.C:探索性能和效率 Python vs.C:探索性能和效率 Apr 18, 2025 am 12:20 AM

Python在開發效率上優於C ,但C 在執行性能上更高。 1.Python的簡潔語法和豐富庫提高開發效率。 2.C 的編譯型特性和硬件控制提升執行性能。選擇時需根據項目需求權衡開發速度與執行效率。

See all articles