1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        Github年度最強(qiáng)的10個(gè)Python庫

        共 2903字,需瀏覽 6分鐘

         ·

        2021-03-27 11:03

        開源最前線(ID:OpenSourceTop) 整編 

        鏈接:https://tryolabs.com/blog/2020/12/21/top-10-python-libraries-of-2020/


        近日,專門提供Python服務(wù)的網(wǎng)站Troy Labs盤點(diǎn)出了2020年發(fā)布的Python庫Top10。一起來看看2020年最強(qiáng)Python庫都有哪些:


        1. Typer

        你可能并不怎么需要寫CLI應(yīng)用程序,但在有些時(shí)候還是需要用到,在FastAPI取得巨大成功之后,tiangolo使用同樣的原理開發(fā)了typo,這是一個(gè)新的庫,它允許你利用Python 3.6+的類型提示特性來編寫命令行接口。



        這樣的設(shè)計(jì)除了可以確保你的代碼得到適當(dāng)?shù)奈臋n化,你還可以更快速的得到一個(gè)帶有驗(yàn)證的CLI界面。通過使用類型提示,你可以在編輯器(如VSCode)代碼自動(dòng)補(bǔ)全,大大提高了你的工作效率。

        為了增強(qiáng)它的特性,Typer還能配合命令行神器Click使用,這意味著Typer可以充分利用Click的所有優(yōu)點(diǎn)和插件,并根據(jù)自己的需求實(shí)現(xiàn)更加復(fù)雜的功能。

        開源地址:https://github.com/tiangolo/typer


        2. Rich

        誰說終端應(yīng)用程序就一定是單一的黑白色?其實(shí)它也可以是彩色的。


        你想要在終端添加顏色和樣式么?你想要你的終端可以快速打印復(fù)雜的表么?你想要輕松地顯示漂亮的進(jìn)度條、Emojis么?以上這些功能通通都可以在Rich中實(shí)現(xiàn),看看下面的示例截圖你就懂了:

        這個(gè)庫將終端應(yīng)用程序的體驗(yàn)提升到了一個(gè)全新的水平。

        開源地址:https://github.com/willmcgugan/rich


        3. Dear PyGui

        盡管Rich可以讓你的終端應(yīng)用程序變得很漂亮,但有時(shí)這還不夠,你更需要的是一個(gè)真正的GUI,Dear PyGui是一個(gè)便于使用、功能強(qiáng)大的Python GUI框架。



        Dear PyGui使用了在電子游戲中很流行的即時(shí)模式范式。這基本上意味著動(dòng)態(tài)GUI是逐幀獨(dú)立繪制的,不需要持久化任何數(shù)據(jù)。這也是Dear PyGui與其他Python GUI框架不同的地方,Dear PyGui的高性能,是你在工程、模擬、游戲或數(shù)據(jù)科學(xué)應(yīng)用程序中經(jīng)常需要用到的。

        Dear PyGui支持Windows 10 (DirectX 11), Linux (OpenGL 3) and MacOS (Metal)

        開源地址:https://github.com/hoffstadt/DearPyGui


        4. PrettyErrors



        PrettyErrors是一個(gè)精簡Python錯(cuò)誤信息的工具,PrettyErrors只做一件事,它支持在終端進(jìn)行彩色輸出,標(biāo)注出文件棧蹤跡。這樣一來,你就不需要掃描整個(gè)屏幕來找到異常的部分。

        開源地址:https://github.com/onelivesleft/PrettyErrors


        5. Diagrams



        我們程序員喜歡解決問題和編寫代碼,但有時(shí),我們需要向其他同事解釋復(fù)雜的架構(gòu)設(shè)計(jì),作為項(xiàng)目文檔的一部分。一般情況下,我們會(huì)使用GUI工具處理圖表,并將文稿進(jìn)行可視化處理。但是還有更好的方法。

        Diagrams可以讓你在沒有任何設(shè)計(jì)工具的情況下直接用Python代碼繪制云系統(tǒng)架構(gòu),它的圖標(biāo)對(duì)包括括AWS、Azure、GCP在內(nèi)的幾家云服務(wù)提供商來說都很有用。這使得創(chuàng)建箭頭和組變得非常容易,而且只需要幾行代碼就能實(shí)現(xiàn)。

        開源地址:https://github.com/mingrammer/diagrams


        6. Hydra and OmegaConf

        在機(jī)器學(xué)習(xí)項(xiàng)目中做研究和實(shí)驗(yàn)時(shí),總是有無數(shù)的設(shè)置可以嘗試,在重要的應(yīng)用程序中,配置管理可能會(huì)變得非常復(fù)雜,如果有一種結(jié)構(gòu)化的方法來處理這些難題就好了。

        Hydra允許你以一種可組合的方式構(gòu)建配置,并從命令行或配置文件中覆蓋某些部分。下面舉個(gè)例子,關(guān)于如何使用Hydra定義一個(gè)基本配置,然后用它們運(yùn)行多個(gè)不容的任務(wù):
        python train_model.py variation=option_a,option_b



        開源地址:https://github.com/facebookresearch/hydra


        7. PyTorch Lightning

        每一個(gè)能夠提高數(shù)據(jù)科學(xué)團(tuán)隊(duì)生產(chǎn)力的工具都是非常寶貴的。PyTorch Lightning通過將科學(xué)與工程分離的方式來提高效率,它有點(diǎn)像TensorFlow的Keras,在某種意義上,它可以使你的代碼更加簡潔,不過它依然還是PyTorch,你依然可以訪問所有常用的api。



        這個(gè)庫能夠使DL / ML研究的40多個(gè)部分實(shí)現(xiàn)自動(dòng)化,例如GPU訓(xùn)練、分布式GPU(集群)訓(xùn)練、TPU訓(xùn)練等等……

        開源地址:https://github.com/PyTorchLightning/PyTorch-lightning


        8. Hummingbird



        Hummingbird是微軟的一項(xiàng)研究成果,它能夠?qū)⒁呀?jīng)訓(xùn)練好的ML模型匯編成張量計(jì)算,從而不需要設(shè)計(jì)新的模型。還允許用戶使用神經(jīng)網(wǎng)絡(luò)框架(例如PyTorch)來加速傳統(tǒng)的ML模型。它的推理API跟sklearn范例十分相似,都可以重復(fù)使用現(xiàn)有的代碼,但是它是用Hummingbird生成的代碼去實(shí)現(xiàn)的。

        開源地址:https://github.com/microsoft/hummingbird


        9. HiPlot



        幾乎每一個(gè)數(shù)據(jù)科學(xué)家在他們的職業(yè)生涯中都有過處理高維數(shù)據(jù)的經(jīng)歷。不幸的是,人類的大腦并不能完全憑直覺處理這類數(shù)據(jù),所以我們必須求助于其他技術(shù)。

        今年早些時(shí)候,F(xiàn)acebook發(fā)布了HiPlot,它是用平行圖和其他的圖像方式,幫助AI研究者發(fā)現(xiàn)高維數(shù)據(jù)的相關(guān)性和模型,是一款輕巧的交互式可視化工具。HiPlot是交互式的,可擴(kuò)展的,因此你可以在Jupyter Notebooks或者它自己的服務(wù)器上使用它。

        開源地址:https://github.com/facebookresearch/hiplot


        10. Scalene



        隨著Python庫的生態(tài)系統(tǒng)變得越來越復(fù)雜,我們發(fā)現(xiàn)自己編寫的代碼越來越依賴于C擴(kuò)展和多線程代碼。如何測(cè)試性能這就成一個(gè)問題,因?yàn)镃Python內(nèi)置的分析器不能正確地處理多線程和本機(jī)代碼。

        Scalene是一個(gè)高性能的CPU內(nèi)存分析器,它能夠正確處理多線程代碼,并區(qū)分運(yùn)行Python和本機(jī)代碼所花費(fèi)的時(shí)間。不需要修改代碼,只需要使用scalene從命令行運(yùn)行腳本,它就可以為你生成一個(gè)文本或HTML報(bào)告,顯示代碼每行的CPU和內(nèi)存使用情況。

        開源地址:https://github.com/emeryberger/scalene




        獲取更多優(yōu)質(zhì)文章,點(diǎn)擊關(guān)注豬哥

        ??????

        瀏覽 53
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            久久电影精品 | 欧美精品一级 | 日韩视频一区尤物少妇偷拍 | 大乳巨大videosboobs | 精品久久一区二区三区 | 男女免费网站 | 国产高清色| 99久久99视频 | 久久免费精品视频 | 日本熟妇浓毛大荫蒂高潮 |