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>

        推薦一些能能提高生產(chǎn)力的 Python 庫(kù)

        共 3544字,需瀏覽 8分鐘

         ·

        2020-09-01 06:43


        一門(mén)編程語(yǔ)言好用、方便的程度在很多時(shí)候會(huì)取決于這門(mén)語(yǔ)言相關(guān)的庫(kù)夠不夠豐富,Python 之所以火爆除了其本身的語(yǔ)法和特性之外,還在一定程度上取決于其有太多太多庫(kù)的支持,不論是官方維護(hù)的還是第三方開(kāi)發(fā)的。

        就比如說(shuō)做機(jī)器學(xué)習(xí)為什么很多人都用 Python,一個(gè)非常大的因素就是 TensorFlow 和 PyTorch 對(duì) Python 的支持。

        當(dāng)然在這里并不是說(shuō) Python 的庫(kù)真的就全的不要不要的,它在某些領(lǐng)域或者項(xiàng)目的生態(tài)還是有待完善的。

        正好昨天刷到知乎一個(gè)問(wèn)題「你見(jiàn)過(guò)哪些相見(jiàn)恨晚的 Python 庫(kù)?」,其意就是想了解下有哪些非常好用的提高生產(chǎn)力的 Python 庫(kù)。

        一些回答直接把 awesome-python 貼過(guò)來(lái),點(diǎn)贊非常多,當(dāng)然多歸多,但是里面很多都是些過(guò)期的或者其實(shí)沒(méi)太有什么價(jià)值的庫(kù),反而會(huì)增加了挑選庫(kù)的成本。我大體上把一些回答過(guò)了一遍,另外結(jié)合自己平時(shí)了解的內(nèi)容,稍微對(duì)一些基礎(chǔ)生產(chǎn)力庫(kù)做了簡(jiǎn)單的梳理,在這里分享給大家。

        所以這里就不再針對(duì)于一些特殊的場(chǎng)景推薦了,如一些 Web開(kāi)發(fā)庫(kù)、網(wǎng)絡(luò)請(qǐng)求庫(kù)、數(shù)據(jù)操作庫(kù)、數(shù)據(jù)分析庫(kù)、機(jī)器分析庫(kù)等等。下面主要羅列一些適用范圍和方向較廣,對(duì)于一些基礎(chǔ)設(shè)施的建設(shè)比較有用,能在多數(shù)場(chǎng)景下提高 Python 生產(chǎn)力的庫(kù),描述比較簡(jiǎn)單,主要是提供一個(gè)列表,僅供參考哈。

        attrs、cattrs

        https://github.com/python-attrs/attrs

        https://github.com/Tinche/cattrs

        簡(jiǎn)化類的定義、序列化反序列化等操作。

        loguru

        https://github.com/Delgan/loguru

        可簡(jiǎn)化日志記錄寫(xiě)法。

        autopep8

        https://github.com/hhatto/autopep8

        把 Python 代碼轉(zhuǎn)成符合 PEP8 規(guī)范的代碼。

        psutil

        https://github.com/giampaolo/psutil

        Python 實(shí)現(xiàn)任務(wù)監(jiān)控的庫(kù)。

        furl

        https://github.com/gruns/furl

        對(duì) url 的處理非常方便,比 urllib 等庫(kù)好用多。

        retrying、tenacity

        https://github.com/rholder/retrying

        https://github.com/jd/tenacity

        異常重試庫(kù),如出錯(cuò)之后重試多少次,尤其在發(fā)起一些 HTTP 請(qǐng)求時(shí)非常有用,當(dāng)然也能用于其他地方。

        typing

        https://docs.python.org/zh-cn/3/library/typing.html#module-typing

        對(duì) Python 類型的支持,支持多種類型、嵌套類型,也推薦多多使用 Python 的類型注解。

        argparse

        https://docs.python.org/zh-cn/3/library/argparse.html

        個(gè)人曾經(jīng)使用過(guò)幾個(gè)命令行解析工具,如 docopt,但后來(lái)還是轉(zhuǎn)回來(lái)了 argparse,功能齊全強(qiáng)大。

        absl-py

        https://github.com/abseil/abseil-py

        個(gè)人感覺(jué)比 argparse 更易用的庫(kù),如 TensorFlow 就在使用這個(gè),對(duì)于定義一些 Flag 非常方便。

        pipenv

        https://github.com/pypa/pipenv

        功能更全的包管理工具,集成虛擬環(huán)境、支持 Lock 機(jī)制鎖定安裝包版本和依賴信息。當(dāng)然也有坑點(diǎn),可自行搜索。

        drf

        https://www.django-rest-framework.org/

        基于 Django 的 REST Framework,快速實(shí)現(xiàn) REST API。

        watchdog

        https://github.com/gorakhargosh/watchdog

        方便監(jiān)視文件系統(tǒng)改動(dòng)。

        glob

        https://docs.python.org/3/library/glob.html

        對(duì)文件的操作非常方便。

        2to3

        https://docs.python.org/2/library/2to3.html

        把 Python2 代碼轉(zhuǎn)成 Python3 代碼。

        glom

        https://github.com/mahmoud/glom

        對(duì) JSON 嵌套的處理非常方便。

        pathlib

        https://docs.python.org/3/library/pathlib.html

        更為方便的 Python 路徑操作庫(kù)。

        environs

        https://github.com/sloria/environs

        對(duì)于環(huán)境變量的獲取非常方便,支持多種類型,如 int、bool 等。

        pysnooper

        https://github.com/cool-RR/PySnooper

        非常方便簡(jiǎn)單的 Python 調(diào)試器,可以追蹤到代碼每一處細(xì)節(jié)的執(zhí)行狀態(tài)。

        tqdm

        https://github.com/tqdm/tqdm

        進(jìn)度條控制顯示非常方便。

        sh

        https://github.com/amoffat/sh

        對(duì) Linux 一些命令的封裝,簡(jiǎn)單好用又高效。

        faker

        https://github.com/joke2k/faker

        模擬數(shù)據(jù)的生成。

        arrow、dateutil、dateparser、pendulum

        https://github.com/crsmithdev/arrowhttps://github.com/dateutil/dateutil

        https://github.com/scrapinghub/dateparser

        https://github.com/sdispater/pendulum

        時(shí)間解析和處理庫(kù),非常方便。arrow 目前 Star 最多,好評(píng)最多。

        yagmail

        https://github.com/kootenpv/yagmail

        方便的發(fā)郵件庫(kù),替代自帶的 smtplib。

        chardet

        https://github.com/chardet/chardet

        字符串類型編碼檢測(cè)。

        pypinyin

        https://github.com/mozillazg/python-pinyin

        漢字轉(zhuǎn)拼音,在一些中文轉(zhuǎn)化處理上很有用。

        sphinx

        https://www.sphinx-doc.org/en/master/

        編寫(xiě)文檔使用,大多數(shù) Python 庫(kù)文檔都是這個(gè)寫(xiě)的,如 Scrapy、requests。

        個(gè)人 sphinx + markdown 的樣例:

        https://github.com/Gerapy/Docs

        jinja2

        https://github.com/pallets/jinja

        一個(gè)方便的模板引擎,呈現(xiàn)頁(yè)面時(shí)很方便。

        click

        https://github.com/pallets/click

        更方便靈活地實(shí)現(xiàn)命令行傳遞參數(shù)。

        ray

        https://github.com/ray-project/ray

        分布式多進(jìn)程管理。

        supervisor

        https://github.com/Supervisor/supervisor

        進(jìn)程管理工具,如實(shí)現(xiàn)多任務(wù)后臺(tái)運(yùn)行,Docker 打包時(shí)會(huì)經(jīng)常用到。

        apscheduler

        https://github.com/agronholm/apscheduler

        Python 定時(shí)任務(wù),不過(guò) K8S 也可以實(shí)現(xiàn),個(gè)人目前可能更傾向于 K8S。

        intelpython

        https://software.intel.com/en-us/distribution-for-python

        這不是 Python 庫(kù),是一個(gè) Intel 開(kāi)發(fā)的基于 Intel 處理器優(yōu)化的 Python 解釋器,對(duì)于大規(guī)模運(yùn)算提升很大。

        完畢。

        好啦,先推薦這么多了,后面還會(huì)慢慢積累,大家可以了解下,個(gè)人感覺(jué)有不少庫(kù)還是能極大提高生產(chǎn)力的。

        由于這次主要是推薦一些適用范圍和方向較廣,個(gè)人感覺(jué)對(duì)于一些基礎(chǔ)設(shè)施的建設(shè)比較有用的庫(kù),所以一些 Web、爬蟲(chóng)、數(shù)據(jù)分析、機(jī)器學(xué)習(xí)等庫(kù)就沒(méi)有列在這里了。

        當(dāng)然也由于個(gè)人水平有限,也有很多庫(kù)沒(méi)有列全,如果大家有推薦的,歡迎留言分享哈!


        推薦閱讀


        帶你用 Python 實(shí)現(xiàn)自動(dòng)化群控(入門(mén)篇)

        Python 自動(dòng)化,Appium 憑什么使用 UiAutomator2?

        Python 自動(dòng)化,Helium 憑什么取代 Selenium?



        瀏覽 60
        點(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>
            成人免费观看网站 | 色婷婷精品秘国产生583 | 久操视频网站 | 香蕉电影伊人 | 影音先锋二区 | 成人看兔费的黄片 | 一级爱爱片 | 黄片大全 | 一级黄色直播 | 大屌一区二区三区 |