推薦一些實(shí)用的的 Python 庫

一門語言好用寡润、方便的程度在很多時(shí)候會(huì)取決于這門語言相關(guān)的庫夠不夠豐富,Python 之所以火爆除了其本身的語法和特性之外尉桩,還在一定程度上取決于其有太多太多庫的支持肌幽,不論是官方維護(hù)的還是第三方開發(fā)的。就比如說做機(jī)器學(xué)習(xí)為什么很多人都用 Python糯耍,一個(gè)非常大的因素就是 TensorFlow 和 PyTorch 對(duì) Python 的支持扔字。當(dāng)然在這里并不是說 Python 的庫真的就全的不要不要的,它在某些領(lǐng)域或者項(xiàng)目的生態(tài)還是有待完善的温技。

正好昨天刷到知乎一個(gè)問題「你見過哪些相見恨晚的 Python 庫革为?」,其意就是想了解下有哪些非常好用的提高生產(chǎn)力的 Python 庫舵鳞。一些回答直接把 awesome-python 貼過來震檩,點(diǎn)贊非常多,當(dāng)然多歸多蜓堕,但是里面很多都是些過期的或者其實(shí)沒太有什么價(jià)值的庫抛虏,反而會(huì)增加了挑選庫的成本。我大體上把一些回答過了一遍套才,另外結(jié)合自己平時(shí)了解的內(nèi)容迂猴,稍微對(duì)一些基礎(chǔ)生產(chǎn)力庫做了簡單的梳理,在這里分享給大家背伴。

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

attrs、cattrs

GitHub:https://github.com/python-attrs/attrs死遭、https://github.com/Tinche/cattrs

簡化類的定義广恢、序列化反序列化等操作。

個(gè)人寫的簡介:https://mp.weixin.qq.com/s/oHK-Y4lOeaQCFtDWgqXxFA

loguru

GitHub:https://github.com/Delgan/loguru

可簡化日志記錄寫法呀潭。

個(gè)人寫的簡介:https://mp.weixin.qq.com/s/5Ri1WS5cTGCNAQ0I_zYycg

autopep8

GitHub:https://github.com/hhatto/autopep8

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

psutil

GitHub:https://github.com/giampaolo/psutil

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

furl

GitHub:https://github.com/gruns/furl

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

retrying荒椭、tenacity

GitHub:https://github.com/rholder/retrying、https://github.com/jd/tenacity

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

typing

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

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

argparse

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

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

absl-py

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

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

pipenv

GitHub:https://github.com/pypa/pipenv

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

drf

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

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

watchdog

GitHub:https://github.com/gorakhargosh/watchdog

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

glob

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

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

2to3

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

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

glom

GitHub:https://github.com/mahmoud/glom

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

pathlib

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

更為方便的 Python 路徑操作庫。

environs

GitHub:https://github.com/sloria/environs

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

pysnooper

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

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

tqdm

GitHub:https://github.com/tqdm/tqdm

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

sh

GitHub:https://github.com/amoffat/sh

對(duì) Linux 一些命令的封裝生蚁,簡單好用又高效噩翠。

faker

GitHub:https://github.com/joke2k/faker

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

個(gè)人寫的簡介:https://mp.weixin.qq.com/s/iLjr95uqgTclxYfWWNxrAA

arrow邦投、dateutil伤锚、dateparser、pendulum

GitHub:https://github.com/crsmithdev/arrow志衣、https://github.com/dateutil/dateutil屯援、https://github.com/scrapinghub/dateparser、https://github.com/sdispater/pendulum

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

yagmail

GitHub:https://github.com/kootenpv/yagmail

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

chardet

GitHub:https://github.com/chardet/chardet

字符串類型編碼檢測惯吕。

pypinyin

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

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

個(gè)人寫的簡介:https://mp.weixin.qq.com/s/NvA3j8Ns1-6CFgWpUcWwQw

sphinx

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

編寫文檔使用废登,大多數(shù) Python 庫文檔都是這個(gè)寫的淹魄,如 Scrapy、requests堡距。

個(gè)人 sphinx + markdown 的樣例:https://github.com/Gerapy/Docs

jinja2

GitHub:https://github.com/pallets/jinja

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

click

GitHub:https://github.com/pallets/click

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

ray

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

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

supervisor

GitHub:https://github.com/Supervisor/supervisor

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

apscheduler

GitHub:https://github.com/agronholm/apscheduler

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

intelpython

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


轉(zhuǎn)載自崔慶才個(gè)人網(wǎng)站:https://cuiqingcai.com/9077.html

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市亡电,隨后出現(xiàn)的幾起案子届巩,更是在濱河造成了極大的恐慌,老刑警劉巖份乒,帶你破解...
    沈念sama閱讀 221,273評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件姆泻,死亡現(xiàn)場離奇詭異零酪,居然都是意外死亡冒嫡,警方通過查閱死者的電腦和手機(jī)拇勃,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來孝凌,“玉大人方咆,你說我怎么就攤上這事◇凹埽” “怎么了瓣赂?”我有些...
    開封第一講書人閱讀 167,709評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長片拍。 經(jīng)常有香客問我煌集,道長,這世上最難降的妖魔是什么捌省? 我笑而不...
    開封第一講書人閱讀 59,520評(píng)論 1 296
  • 正文 為了忘掉前任苫纤,我火速辦了婚禮,結(jié)果婚禮上纲缓,老公的妹妹穿的比我還像新娘卷拘。我一直安慰自己,他們只是感情好祝高,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,515評(píng)論 6 397
  • 文/花漫 我一把揭開白布栗弟。 她就那樣靜靜地躺著,像睡著了一般工闺。 火紅的嫁衣襯著肌膚如雪乍赫。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,158評(píng)論 1 308
  • 那天陆蟆,我揣著相機(jī)與錄音雷厂,去河邊找鬼。 笑死遍搞,一個(gè)胖子當(dāng)著我的面吹牛罗侯,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播溪猿,決...
    沈念sama閱讀 40,755評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼钩杰,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了诊县?” 一聲冷哼從身側(cè)響起讲弄,我...
    開封第一講書人閱讀 39,660評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎依痊,沒想到半個(gè)月后避除,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體怎披,經(jīng)...
    沈念sama閱讀 46,203評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,287評(píng)論 3 340
  • 正文 我和宋清朗相戀三年瓶摆,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了凉逛。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,427評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡群井,死狀恐怖状飞,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情书斜,我是刑警寧澤诬辈,帶...
    沈念sama閱讀 36,122評(píng)論 5 349
  • 正文 年R本政府宣布,位于F島的核電站荐吉,受9級(jí)特大地震影響焙糟,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜样屠,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,801評(píng)論 3 333
  • 文/蒙蒙 一穿撮、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧瞧哟,春花似錦混巧、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,272評(píng)論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至陨亡,卻和暖如春傍衡,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背负蠕。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評(píng)論 1 272
  • 我被黑心中介騙來泰國打工蛙埂, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人遮糖。 一個(gè)月前我還...
    沈念sama閱讀 48,808評(píng)論 3 376
  • 正文 我出身青樓绣的,卻偏偏與公主長得像,于是被迫代替她去往敵國和親欲账。 傳聞我的和親對(duì)象是個(gè)殘疾皇子屡江,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,440評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容