欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

2020年10款優(yōu)秀的Python第三方庫,看看有你中意的嗎?

 更新時間:2021年01月12日 11:57:21   作者:Jackpop  
2020已經(jīng)過去,在過去的一年里,又有非常多優(yōu)秀的Python庫涌現(xiàn)出來。相對于numpy、TensorFlow、pandas這些已經(jīng)經(jīng)過多年維護、迭代,對于大多數(shù)Python開發(fā)者耳熟能詳?shù)膸觳煌?/div>

相對于numpy、TensorFlow、pandas這些已經(jīng)經(jīng)過多年維護、迭代,對于大多數(shù)Python開發(fā)者耳熟能詳?shù)膸觳煌?/p>

今天要給大家介紹的是誕生于2020年的新鮮Python庫,而且,本文介紹的這10個Python庫一直都受到非常好的維護。

廢話不多說,下面開始本文的正式內(nèi)容!

1. Typer

或許,你并非經(jīng)常編寫 CLI 應(yīng)用程序,但是當你編寫時,有可能會遇到很多障礙。

繼FastAPI的巨大成功之后,tiangolo用同樣的原則為我們帶來了Typer[1]:一個新的庫,它能讓你利用Python 3.6+的類型提示功能來編寫命令行接口。

這個設(shè)計確實讓Typer脫穎而出。除了確保你的代碼是正確的文檔,你還可以通過小小的改動得到一個帶有驗證的CLI接口。

而且通過使用類型提示,你可以在你的Python編輯器中獲得自動完成(比如VSCode),這將提高你的工作效率。

為了增強它的功能,Typer在另外一款非常知名的CLI工具Click的基礎(chǔ)之上做了很多優(yōu)化和改善。這意味著它可以利用它的所有優(yōu)點、社區(qū)和插件,同時以較少的模板代碼開始簡單的工作。

2. Rich

順著CLI的話題,在使用終端時,往往是單調(diào)的白色,這非常不利于分辨和閱讀。

你想給你的終端輸出添加色彩和與眾不同的風(fēng)格嗎?打印復(fù)雜的表格?顯示漂亮的進度條?Markdown?Emojis?

Rich[2]都能滿足你的要求。

請看示例截圖,了解一下它的功能。

3. Dear PyGui

雖然,正如我們所看到的,終端應(yīng)用可以很好看,但有時這還不夠,你需要一個真正的GUI。

為此,Dear PyGui[3]應(yīng)運而生,它是流行的Dear ImGui C++項目的Python移植。

Dear PyGui利用了在視頻游戲中流行的所謂即時模式范式。

這意味著動態(tài)GUI是一幀一幀獨立繪制的,不需要持久化任何數(shù)據(jù)。這使得這個工具與其他Python GUI框架有著本質(zhì)上的區(qū)別。

它具有很高的性能,并使用計算機的GPU來促進高動態(tài)界面的構(gòu)建,這在工程、模擬、游戲或數(shù)據(jù)科學(xué)應(yīng)用中是經(jīng)常需要的。

4. PrettyErrors

這是一個讓你覺得:"怎么以前沒有人想到它?"的Python庫。

PrettyErrors[4]只做了一件事,而且做得很好。

在支持彩色輸出的終端中,它將混亂的報錯信息轉(zhuǎn)化為更適合我們?nèi)祟惖难劬斫馕龅臇|西。

不再苦苦掃描整個屏幕,定位報錯信息......現(xiàn)在你可以一目了然地找到它。

5. Diagrams

我們程序員喜歡解決問題和編碼。

但有時,作為非常需要的項目文檔的一部分,我們需要向其他同事解釋復(fù)雜的架構(gòu)設(shè)計。

傳統(tǒng)上,我們已經(jīng)求助于GUI工具,我們可以在圖表和可視化上下功夫,把它放在演示和文檔中。

但這不是唯一的方式。

Diagrams[5]可以讓你不用任何設(shè)計工具,直接在Python代碼中繪制云系統(tǒng)架構(gòu)。

只需要幾行代碼,就可以繪制一幅亮眼的架構(gòu)圖。

6. Hydra and OmegaConf

在做機器學(xué)習(xí)項目的研究和實驗時,總有無數(shù)的設(shè)置需要嘗試。

在一些應(yīng)用中,配置管理變得非常復(fù)雜。如果有一種結(jié)構(gòu)化的方式來處理這種復(fù)雜性,會極大的提高開發(fā)效率。

Hydra[6]是一個工具,它允許你以可組合的方式構(gòu)建配置,并從命令行或配置文件中覆蓋某些部分。

python train_model.py variation=option_a,option_b 
 
├── variation 
│   ├── option_a.yaml 
│   └── option_b.yaml 
├── base.yaml 
└── train_model.py 

另一款工具,OmegaConf[7]為分層配置系統(tǒng)的基礎(chǔ)提供了一致的API,支持YAML、配置文件、對象和CLI參數(shù)等不同來源。

7. PyTorch Lightning

每一個能夠提高數(shù)據(jù)科學(xué)團隊生產(chǎn)力的工具都是價值連城的。

沒有理由讓在數(shù)據(jù)科學(xué)項目中工作的人每次都要重新發(fā)明輪子,反復(fù)思考如何更好地組織項目中的代碼,使用一些不太好維護的 "PyTorch boilerplate",或者用潛在的控制權(quán)換取使用更高級別的抽象。

Lightning[8]通過將科學(xué)與工程脫鉤,有助于提高生產(chǎn)力。它有點像TensorFlow的Keras,在某種意義上,它使你的代碼更加簡潔。

然而,它并沒有奪走你的控制權(quán)。它仍然是PyTorch,你可以使用所有常用的API。

這個庫可以幫助團隊利用軟件工程的良好實踐,圍繞組件的組織和明確的責(zé)任,構(gòu)建高質(zhì)量的代碼,可以輕松地擴展到多個GPU、TPU和CPU上進行訓(xùn)練。

這個庫可以幫助數(shù)據(jù)科學(xué)團隊中那些初級成員產(chǎn)生更好的結(jié)果,同時,更有經(jīng)驗的成員也會喜歡它,因為在不放棄控制權(quán)的前提下,提高了整體生產(chǎn)力。

8. Hummingbird

不是所有的機器學(xué)習(xí)都是深度學(xué)習(xí)。很多時候,你的模型由scikit-learn中實現(xiàn)的比較傳統(tǒng)的算法組成(比如隨機森林),或者你使用梯度提升方法,比如流行的LightGBM和XGBoost。

然而,在深度學(xué)習(xí)領(lǐng)域正在發(fā)生很多變化。像PyTorch這樣的框架正在以令人窒息的速度前進,硬件設(shè)備也在優(yōu)化,以更快的速度和更低的功耗運行張量計算。如果我們能夠利用這些工作,更快、更高效地運行我們的傳統(tǒng)方法,豈不美哉?

這就是Hummingbird[9]的用武之地。

微軟的這個新庫可以將你訓(xùn)練好的傳統(tǒng)ML模型編譯成張量計算。

這很好,因為它可以讓你擺脫重新設(shè)計模型的需要。

截至目前,Hummingbird支持轉(zhuǎn)換到PyTorch、TorchScript、ONNX和TVM,以及各種ML模型和矢量器。

9. HiPlot

幾乎每一位數(shù)據(jù)科學(xué)家在其職業(yè)生涯的某個階段都曾處理過高維數(shù)據(jù)。

不幸的是,人類的大腦并沒有足夠的能力直觀地處理這種數(shù)據(jù),所以我們必須借助其他技術(shù)。

今年年初,F(xiàn)acebook發(fā)布了HiPlot[10],這是一個幫助發(fā)現(xiàn)高維數(shù)據(jù)中的相關(guān)性和模式的庫,使用平行圖和其他圖形方式來表示信息。在他們的發(fā)布博文中解釋了這個概念,但基本上是一種很好的、方便的可視化和過濾高維數(shù)據(jù)的方法。

HiPlot是交互式的,可擴展的,你可以從你的標準Jupyter Notebooks或通過它自己的服務(wù)器使用它。

10. Scalene

隨著Python庫的生態(tài)系統(tǒng)越來越復(fù)雜,我們發(fā)現(xiàn)自己編寫了越來越多的依賴于C擴展和多線程代碼的代碼。

在對比性能時,這就成了一個問題,因為CPython內(nèi)置的剖析工具不能正確處理多線程和本地代碼。

這時,Scalene[11]就來救場了。

Scalene是一個針對Python腳本的CPU和內(nèi)存剖析工具,它能夠正確處理多線程代碼,并區(qū)分運行Python和本地代碼的時間。

你不需要修改你的代碼,你只需要用scalene從命令行運行你的腳本,它就會為你生成一個文本或HTML報告,顯示每行代碼的CPU和內(nèi)存使用情況。

結(jié)語

一款好用的工具,能夠讓開發(fā)者事半功倍。

對于Python這種極度依賴第三方工具包的編程語言更是如此。

因為有了這些優(yōu)秀的工具,才使得Python生態(tài)得以完善和狀態(tài)。

以上就是2020年10款優(yōu)秀的Python第三方庫,看看有你中意的嗎?的詳細內(nèi)容,更多關(guān)于python 第三方庫的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 解決python3.6用cx_Oracle庫連接Oracle的問題

    解決python3.6用cx_Oracle庫連接Oracle的問題

    這篇文章主要介紹了解決python3.6用cx_Oracle庫連接Oracle的問題,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • Python在終端通過pip安裝好包以后在Pycharm中依然無法使用的問題(三種解決方案)

    Python在終端通過pip安裝好包以后在Pycharm中依然無法使用的問題(三種解決方案)

    這篇文章主要介紹了Python在終端通過pip安裝好包以后在Pycharm中依然無法使用的問題及解決方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • Python 日志管理模塊Loguru的用法小結(jié)

    Python 日志管理模塊Loguru的用法小結(jié)

    這篇文章主要介紹了Python 日志管理模塊Loguru的用法小結(jié),本篇文章只記錄loguru模塊的使用,包括簡單的用法,以及在多模塊和多線程下的使用,需要的朋友可以參考下
    2023-02-02
  • 再談Python中的字符串與字符編碼(推薦)

    再談Python中的字符串與字符編碼(推薦)

    這篇文章主要介紹了再談Python中的字符串與字符編碼(推薦),具有一定的參考價值,有需要的可以了解一下。
    2016-12-12
  • 詳解Python中列表數(shù)據(jù)的保存與讀取

    詳解Python中列表數(shù)據(jù)的保存與讀取

    列表是一種非常靈活的數(shù)據(jù)結(jié)構(gòu),它可以包含多種類型的元素,本文將介紹如何將一組列表保存到txt文件中,并提供相應(yīng)的讀取方法,希望對大家有所幫助
    2024-04-04
  • 使用Python?文件讀取的多種方式(四種方式)

    使用Python?文件讀取的多種方式(四種方式)

    這篇文章主要介紹了Python?文件讀取的4種方式,主要有直接打開就讀方式,用read()打開,用readines()以及用readline()方式,每種方式通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2022-11-11
  • Python openpyxl模塊原理及用法解析

    Python openpyxl模塊原理及用法解析

    這篇文章主要介紹了Python openpyxl模塊原理及用法解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01
  • 圖解Python中的淺拷貝和深拷貝

    圖解Python中的淺拷貝和深拷貝

    這篇文章主要介紹了圖解Python中的淺拷貝和深拷貝,深拷貝,拷貝的程度深,自己新開辟了一塊內(nèi)存,將被拷貝內(nèi)容全部拷貝過來了,淺拷貝,拷貝的程度淺,只拷貝原數(shù)據(jù)的首地址,然后通過原數(shù)據(jù)的首地址,去獲取內(nèi)容,需要的朋友可以參考下
    2023-11-11
  • python遞歸查詢菜單并轉(zhuǎn)換成json實例

    python遞歸查詢菜單并轉(zhuǎn)換成json實例

    本篇文章主要介紹了python遞歸查詢菜單并轉(zhuǎn)換成json實例,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-03-03
  • Windows系統(tǒng)下cython_bbox庫的正確安裝步驟

    Windows系統(tǒng)下cython_bbox庫的正確安裝步驟

    Cython-bbox一般無法直接通過pip直接安裝,那么如何安裝呢?下面這篇文章主要給大家介紹了關(guān)于Windows系統(tǒng)下cython_bbox庫的正確安裝步驟,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-05-05

最新評論