[Python相見恨晚]之資源大全
阿新 • • 發佈:2019-02-03
說明:以下文章為轉載,有英文原文和中文整理翻譯,對原作者和譯者的工作表示極大感謝!!!
英文原文:https://github.com/vinta/awesome-python
中文譯文:https://github.com/jobbole/awesome-python-cn
及:https://www.zhihu.com/question/24590883/answer/92420471
http://python.jobbole.com/84464/
===分割線=======================================================
環境管理
管理 Python 版本和環境的工具
- p:非常簡單的互動式 python 版本管理工具。官網
- pyenv:簡單的 Python 版本管理工具。官網
- Vex:可以在虛擬環境中執行命令。官網
- virtualenv:建立獨立 Python 環境的工具。官網
- virtualenvwrapper:virtualenv 的一組擴充套件。官網
包管理
管理包和依賴的工具。
- pip:Python 包和依賴關係管理工具。官網
- pip-tools:保證 Python 包依賴關係更新的一組工具。官網
- conda:跨平臺,Python 二進位制包管理工具。官網
- Curdling:管理 Python 包的命令列工具。官網
- wheel:Python 分發的新標準,意在取代 eggs。
包倉庫
本地 PyPI 倉庫服務和代理。
- warehouse:下一代 PyPI。官網
- Warehouse:PyPA 提供的 PyPI 映象工具。官網 bandersnatch
- devpi:PyPI 服務和打包/測試/分發工具。官網
- localshop:本地 PyPI 服務(自定義包並且自動對 PyPI 映象)。官網
分發
打包為可執行檔案以便分發。
- PyInstaller:將 Python 程式轉換成獨立的執行檔案(跨平臺)。官網
- dh-virtualenv:構建並將 virtualenv 虛擬環境作為一個 Debian 包來發布。官網
- Nuitka:將指令碼、模組、包編譯成可執行檔案或擴充套件模組。
- py2app:將 Python 指令碼變為獨立軟體包(Mac OS X)。官網
- py2exe:將 Python 指令碼變為獨立軟體包(Windows)。官網
- pynsist:一個用來建立 Windows 安裝程式的工具,可以在安裝程式中打包 Python本身。官網
構建工具
將原始碼編譯成軟體。
- buildout:一個構建系統,從多個元件來建立,組裝和部署應用。官網
- BitBake:針對嵌入式 Linux 的類似 make 的構建工具。官網
- fabricate:對任何語言自動找到依賴關係的構建工具。官網
- PlatformIO:多平臺命令列構建工具。官網
- PyBuilder:純 Python 實現的持續化構建工具。官網
- SCons:軟體構建工具。官網
互動式解析器
互動式 Python 解析器。
- IPython:功能豐富的工具,非常有效的使用互動式 Python。官網
- bpython:介面豐富的 Python 解析器。官網
- ptpython:高階互動式Python解析器, 構建於python-prompt-toolkit 之上。官網
檔案
檔案管理和 MIME(多用途的網際郵件擴充協議)型別檢測。
- imghdr:(Python 標準庫)檢測圖片型別。官網
- mimetypes:(Python 標準庫)將檔名對映為 MIME 型別。官網
- path.py:對 os.path 進行封裝的模組。官網
- pathlib:(Python3.4+ 標準庫)跨平臺的、面向物件的路徑操作庫。官網
- python-magic:檔案型別檢測的第三方庫 libmagic 的 Python 介面。官網
- Unipath:用面向物件的方式操作檔案和目錄。官網
- watchdog:管理檔案系統事件的 API 和 shell 工具官網
日期和時間
操作日期和時間的類庫。
- arrow:更好的 Python 日期時間操作類庫。官網
- Chronyk:Python 3 的類庫,用於解析手寫格式的時間和日期。官網
- dateutil:Python datetime 模組的擴充套件。官網
- delorean:解決 Python 中有關日期處理的棘手問題的庫。官網
- moment:一個用來處理時間和日期的Python庫。靈感來自於Moment.js。官網
- PyTime:一個簡單易用的Python模組,用於通過字串來操作日期/時間。官網
- pytz:現代以及歷史版本的世界時區定義。將時區資料庫引入Python。官網
- when.py:提供使用者友好的函式來幫助使用者進行常用的日期和時間操作。官網
文字處理
用於解析和操作文字的庫。
- 通用
- chardet:字元編碼檢測器,相容 Python2 和 Python3。官網
- difflib:(Python 標準庫)幫助我們進行差異化比較。官網
- ftfy:讓Unicode文字更完整更連貫。官網
- fuzzywuzzy:模糊字串匹配。官網
- Levenshtein:快速計算編輯距離以及字串的相似度。官網
- pangu.py:在中日韓語字元和數字字母之間新增空格。官網
- yfiglet-figlet:pyfiglet -figlet 的 Python實現。
- shortuuid:一個生成器庫,用以生成簡潔的,明白的,URL 安全的 UUID。官網
- unidecode:Unicode 文字的 ASCII 轉換形式 。官網
- uniout:列印可讀的字元,而不是轉義的字串。官網
- xpinyin:一個用於把漢字轉換為拼音的庫。官網
- simplejson:Python的JSON編碼、解碼器。官網、GitHub
- Slug化
- 解析器
特殊文字格式處理
一些用來解析和操作特殊文字格式的庫。
- 通用
- tablib:一個用來處理中表格資料的模組。官網
- Office
- Marmir:把輸入的Python 資料結構轉換為電子表單。官網
- openpyxl:一個用來讀寫 Excel 2010 xlsx/xlsm/xltx/xltm 檔案的庫。官網
- python-docx:讀取,查詢以及修改 Microsoft Word 2007/2008 docx 檔案。官網
- unoconv:在 LibreOffice/OpenOffice 支援的任意檔案格式之間進行轉換。官網
- XlsxWriter:一個用於建立 Excel .xlsx 檔案的 Python 模組。官網
- xlwings:一個使得在 Excel 中方便呼叫 Python 的庫(反之亦然),基於 BSD 協議。官網
- xlwt:讀寫 Excel 檔案的資料和格式資訊。官網 / xlrd
- relatorio:模板化OpenDocument 檔案。官網
- Markdown
- YAML
- PyYAML:Python 版本的 YAML 解析器。官網
- CSV
- csvkit:用於轉換和操作 CSV 的工具。官網
- Archive
- unp:一個用來方便解包歸檔檔案的命令列工具。官網
自然語言處理
用來處理人類語言的庫。
- NLTK:一個先進的平臺,用以構建處理人類語言資料的 Python 程式。官網
- jieba:中文分詞工具。官網
- langid.py:獨立的語言識別系統。官網
- Pattern:Python 網路資訊挖掘模組。官網
- SnowNLP:一個用來處理中文文字的庫。官網
- TextBlob:為進行普通自然語言處理任務提供一致的 API。官網
- TextGrocery:一簡單高效的短文字分類工具,基於 LibLinear 和 Jieba。官網
文件
用以生成專案文件的庫。
- Sphinx:Python 文件生成器。官網
- awesome-sphinxdoc:官網
- MkDocs:對 Markdown 友好的文件生成器。官網
- pdoc:一個可以替換Epydoc 的庫,可以自動生成 Python 庫的 API 文件。官網
- Pycco:文學程式設計(literate-programming)風格的文件生成器。官網
配置
用來儲存和解析配置的庫。
- config:logging 模組作者寫的分級配置模組。官網
- ConfigObj:INI 檔案解析器,帶驗證功能。官網
- ConfigParser:(Python 標準庫) INI 檔案解析器。官網
- profig:通過多種格式進行配置,具有數值轉換功能。官網
- python-decouple:將設定和程式碼完全隔離。官網
命令列工具
用於建立命令列程式的庫。
- 命令列程式開發
- asciimatics:跨平臺,全屏終端包(即滑鼠/鍵盤輸入和彩色,定位文字輸出),完整的複雜動畫和特殊效果的高階API。官網
- cement:Python 的命令列程式框架。官網
- click:一個通過組合的方式來建立精美命令列介面的包。官網
- cliff:一個用於建立命令列程式的框架,可以建立具有多層命令的命令列程式。官網
- clint:Python 命令列程式工具。官網
- colorama:跨平臺彩色終端文字。官網
- docopt:Python 風格的命令列引數解析器。官網
- Gooey:一條命令,將命令列程式變成一個 GUI 程式。官網
- python-prompt-toolkit:一個用於構建強大的互動式命令列程式的庫。官網
- Pythonpy:在命令列中直接執行任何Python指令。官網
- 生產力工具
- aws-cli:Amazon Web Services 的通用命令列介面。官網
- bashplotlib:在終端中進行基本繪圖。官網
- caniusepython3:判斷是哪個專案妨礙你你移植到 Python 3。官網
- cookiecutter:從 cookiecutters(專案模板)建立專案的一個命令列工具。官網
- doitlive:一個用來在終端中進行現場演示的工具。官網
- howdoi:通過命令列獲取即時的程式設計問題解答。官網
- httpie:一個命令列HTTP 客戶端,cURL 的替代品,易用性更好。官網
- PathPicker:從bash輸出中選出檔案。官網
- percol:向UNIX shell 傳統管道概念中加入互動式選擇功能。官網
- SAWS:一個加強版的 AWS 命令列。官網
- thefuck:修正你之前的命令列指令。官網
- mycli:一個 MySQL 命令列客戶端,具有自動補全和語法高亮功能。官網
- pgcli:Postgres 命令列工具,具有自動補全和語法高亮功能。官網
- try:一個從來沒有更簡單的命令列工具,用來試用python庫。官網
下載器
用來進行下載的庫.
- s3cmd:一個用來管理Amazon S3 和 CloudFront 的命令列工具。官網
- s4cmd:超級 S3 命令列工具,效能更加強勁。官網
- you-get:一個 YouTube/Youku/Niconico 視訊下載器,使用 Python3 編寫。官網
- youtube-dl:一個小巧的命令列程式,用來下載 YouTube 視訊。官網
影象處理
用來操作影象的庫.
- pillow:Pillow 是一個更加易用版的 PIL。官網
- hmap:影象直方圖對映。官網
- imgSeek:一個使用視覺相似性搜尋一組圖片集合的專案。官網
- nude.py:裸體檢測。官網
- pyBarcode:不借助 PIL 庫在 Python 程式中生成條形碼。官網
- pygram:類似 Instagram 的影象濾鏡。官網
- python-qrcode:一個純 Python 實現的二維碼生成器。官網
- Quads:基於四叉樹的計算機藝術。官網
- scikit-image:一個用於(科學)影象處理的 Python 庫。官網
- thumbor:一個小型影象服務,具有剪裁,尺寸重設和翻轉功能。官網
- wand:MagickWand的Python 繫結。MagickWand 是 ImageMagick的 C API 。官網
OCR
光學字元識別庫。
- pyocr:Tesseract 和 Cuneiform 的一個封裝(wrapper)。官網
音訊
用來操作音訊的庫
- audiolazy:Python 的數字訊號處理包。官網
- audioread:交叉庫 (GStreamer + Core Audio + MAD + FFmpeg) 音訊解碼。官網
- beets:一個音樂庫管理工具及 MusicBrainz 標籤新增工具官網
- dejavu:音訊指紋提取和識別官網
- eyeD3:一個用來操作音訊檔案的工具,具體來講就是包含 ID3 元資訊的 MP3 檔案。官網
- id3reader:一個用來讀取 MP3 元資料的 Python 模組。官網
- m3u8:一個用來解析 m3u8 檔案的模組。官網
- mutagen:一個用來處理音訊元資料的 Python 模組。官網
- pydub:通過簡單、簡潔的高層介面來操作音訊檔案。官網
- pyechonest:Echo Nest API 的 Python 客戶端官網
- talkbox:一個用來處理演講/訊號的 Python 庫官網
- TimeSide:開源 web 音訊處理框架。官網
- tinytag:一個用來讀取MP3, OGG, FLAC 以及 Wave 檔案音樂元資料的庫。官網
- mingus:一個高階音樂理論和曲譜包,支援 MIDI 檔案和回放功能。官網
Video
用來操作視訊和GIF的庫。
地理位置
地理編碼地址以及用來處理經緯度的庫。
- GeoDjango:世界級地理圖形 web 框架。官網
- GeoIP:MaxMind GeoIP Legacy 資料庫的 Python API。官網
- geojson:GeoJSON 的 Python 繫結及工具。官網
- geopy:Python 地址編碼工具箱。官網
- pygeoip:純 Python GeoIP API。官網
- django-countries:一個 Django 應用程式,提供用於表格的國家選擇功能,國旗圖示靜態檔案以及模型中的國家欄位。官網
HTTP
使用HTTP的庫。
- requests:人性化的HTTP請求庫。官網
- grequests:requests 庫 + gevent ,用於非同步 HTTP 請求.官網
- httplib2:全面的 HTTP 客戶端庫。官網
- treq:類似 requests 的Python API 構建於 Twisted HTTP 客戶端之上。官網
- urllib3:一個具有執行緒安全連線池,支援檔案 post,清晰友好的 HTTP 庫。官網
資料庫
Python實現的資料庫。
- pickleDB:一個簡單,輕量級鍵值儲存資料庫。官網
- PipelineDB:流式 SQL 資料庫。官網
- TinyDB:一個微型的,面向文件型資料庫。官網
- ZODB:一個 Python 原生物件資料庫。一個鍵值和物件圖資料庫。官網
資料庫驅動
用來連線和操作資料庫的庫。
- MySQL:awesome-mysql系列
- mysql-python:Python 的 MySQL 資料庫聯結器。官網
- ysqlclient:mysql-python 分支,支援 Python 3。
- oursql:一個更好的 MySQL 聯結器,支援原生預編譯指令和 BLOBs.官網
- PyMySQL:純 Python MySQL 驅動,相容 mysql-python。官網
- PostgreSQL
- 其他關係型資料庫
- NoSQL 資料庫