Python 學習資源大全中文版
我想很多程式員應該記得 GitHub 上有一個 Awesome - XXX 系列的資源整理。awesome-python 是 vinta 發起維護的 Python 資源清單,内容包括:Web架構、網絡爬蟲、網絡内容提取、模闆引擎、資料庫、資料可視化、圖檔處理、文本處理、自然語言處理、機器學習、日志、代碼分析等。由伯樂線上持續更新。
Awesome 系列雖然挺全,但基本隻對收錄的資源做了極為簡要的介紹,如果有更詳細的中文介紹,對相應開發者的幫助會更大。這也是我們發起這個開源項目的初衷。
我們要做什麼?
- 基于 awesome-python 清單,我們将對其中的各個資源項進行編譯整理。此外還将從其他來源補充好資源。
- 整理後的内容,将收錄在伯樂線上資源頻道。可參考已整理的内容:
- 《Scrapy:Python的爬蟲架構》
- 《Flask:一個使用Python編寫的輕量級Web應用架構》
如何參與本項目?
從下面的目錄來看,本項目的工作量小不了,是以非常期待能有更多程式員一起來參與。
不過加入前,有幾個小要求:
- 英文還不錯,能讀懂英文并用自己的話複述;
- 在用 Python;
如有興趣,請加 QQ:50872495。加 Q 時請注明「Python大全」
如何為清單貢獻新資源?
歡迎大家為清單貢獻高品質的新資源,送出PR時請參照以下要求:
- 請確定推薦的資源自己使用過
- 送出PR時請注明推薦理由
資源清單管理收到PR請求後,會定期(每周)在微網誌轉發本周送出的PR清單,并在微網誌上面聽取使用過這些資源的意見。确認通過後,會加入資源大全。
感謝您的貢獻!
本項目的參與者
- 維護者:
- 貢獻者:艾淩風、Namco、Daetalus、黃利民、atupal、rainbow、木頭lbj、beyondwu、cissoid、李廣勝、polyval、冰斌、趙葉宇、л stalgic、碩恩、strongit、yuukilp
注:名單不分排名,不定期補充更新
獎勵計劃
雖然獎勵可能并不是你加入的主要原因,但還是有必要提一下:
- 整理超過 20 個資源後,可在伯樂線上上開通打賞;
- 每整理 20 個資源,有機會獲得技術書籍或各種有意思的創意、極客産品;
- 獎勵詳情
環境管理
管理 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化
- awesome-slugify:一個 Python slug 化庫,可以保持 Unicode。官網
- python-slugify:Python slug 化庫,可以把 unicode 轉化為 ASCII。官網
- unicode-slugify:一個 slug 工具,可以生成 unicode slugs ,需要依賴 Django 。官網
- 解析器
- phonenumbers:解析,格式化,儲存,驗證電話号碼。官網
- PLY:lex 和 yacc 解析工具的 Python 實作。官網
- Pygments:通用文法高亮工具。官網
- pyparsing:生成通用解析器的架構。官網
- python-nameparser:把一個人名分解為幾個獨立的部分。官網
- python-user-agents:浏覽器 user agent 解析器。官網
- sqlparse:一個無驗證的 SQL 解析器。官網
特殊文本格式處理
一些用來解析和操作特殊文本格式的庫。
- 通用
- 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 檔案。官網
- PDF
- PDFMiner:一個用于從PDF文檔中抽取資訊的工具。官網
- PyPDF2:一個可以分割,合并和轉換 PDF 頁面的庫。官網
- ReportLab:快速建立富文本 PDF 文檔。官網
- Markdown
- Mistune:快速并且功能齊全的純 Python 實作的 Markdown 解析器。官網
- Python-Markdown:John Gruber’s Markdown 的 Python 版實作。官網
- Python-Markdiwn2:純 Python 實作的 Markdown 解析器,比 Python-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)。官網
- pytesseract:Google Tesseract OCR 的另一個封裝(wrapper)。官網
- python-tesseract - Google Tesseract OCR 的一個包裝類。
音頻
用來操作音頻的庫
- audiolazy:Python 的數字信号處理包。官網
- audioread:交叉庫 (GStreamer + Core Audio + MAD + FFmpeg) 音頻解碼。官網
- beets:一個音樂庫管理工具及 MusicBrainz 标簽添加工具官網
- dejavu:音頻指紋提取和識别官網
- django-elastic-transcoder:Django + Amazon Elastic Transcoder。官網
- 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的庫。
- moviepy:一個用來進行基于腳本的視訊編輯子產品,适用于多種格式,包括動圖 GIFs。官網
- scikit-video:SciPy 視訊處理常用程式。官網
地理位置
地理編碼位址以及用來處理經緯度的庫。
- 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
- psycopg2:Python 中最流行的 PostgreSQL 擴充卡。官網
- queries:psycopg2 庫的封裝,用來和 PostgreSQL 進行互動。官網
- txpostgres:基于 Twisted 的異步 PostgreSQL 驅動。官網
- 其他關系型資料庫
- apsw:另一個 Python SQLite封裝。官網
- dataset:在資料庫中存儲Python字典
- pymssql:一個簡單的Microsoft SQL Server資料庫接口。官網
- NoSQL 資料庫
- cassandra-python-driver:Cassandra 的 Python 驅動。官網
- HappyBase:一個為 Apache HBase 設計的,對開發者友好的庫。官網
- Plyvel:一個快速且功能豐富的 LevelDB 的 Python 接口。官網
- py2neo:Neo4j restful 接口的Python 封裝用戶端。官網
- pycassa:Cassandra 的 Python Thrift 驅動。官網
- PyMongo:MongoDB 的官方 Python 用戶端。官網
- redis-py:Redis 的 Python 用戶端。官網
- telephus:基于 Twisted 的 Cassandra 用戶端。官網
- txRedis:基于 Twisted 的 Redis 用戶端。官網
ORM
實作對象關系映射或資料映射技術的庫。
- 關系型資料庫
- Django Models:Django 的一部分。官網
- SQLAlchemy:Python SQL 工具以及對象關系映射工具。官網
- awesome-sqlalchemy系列
- Peewee:一個小巧,富有表達力的 ORM。官網
- PonyORM:提供面向生成器的 SQL 接口的 ORM。官網
- python-sql:編寫 Python 風格的 SQL 查詢。官網
- NoSQL 資料庫
- django-mongodb-engine:Django MongoDB 後端。官網
- PynamoDB:Amazon DynamoDB 的一個 Python 風格接口。官網
- flywheel:Amazon DynamoDB 的對象映射工具。官網
- MongoEngine:一個Python 對象文檔映射工具,用于 MongoDB。官網
- hot-redis:為 Redis 提供 Python 豐富的資料類型。官網
- redisco:一個 Python 庫,提供可以持續存在在 Redis 中的簡單模型和容器。官網
- 其他
- butterdb:Google Drive 電子表格的 Python ORM。官網
Web 架構
全棧 Web 架構。
- Django:Python 界最流行的 web 架構。官網
- awesome-django系列
- Flask:一個 Python 微型架構。官網
- awesome-flask系列
- pyramid:一個小巧,快速,接地氣的開源Python web 架構。
- awesome-pyramid系列
- Bottle:一個快速小巧,輕量級的 WSGI 微型 web 架構。官網
- CherryPy:一個極簡的 Python web 架構,服從 HTTP/1.1 協定且具有WSGI 線程池。官網
- TurboGears:一個可以擴充為全棧解決方案的微型架構。官網
- web.py:一個 Python 的 web 架構,既簡單,又強大。官網
- web2py:一個全棧 web 架構和平台,專注于簡單易用。官網
- Tornado:一個web 架構和異步網絡庫。官網
權限
允許或拒絕使用者通路資料或功能的庫。
- Carteblanche:Module to align code with thoughts of users and designers. Also magically handles navigation and permissions.官網
- django-guardian:Django 1.2+ 實作了單個對象權限。官網
- django-rules:一個小巧但是強大的應用,提供對象級别的權限管理,且不需要使用資料庫。官網
CMS
内容管理系統
- odoo-cms: 一個開源的,企業級 CMS,基于odoo。官網
- django-cms:一個開源的,企業級 CMS,基于 Django。官網
- djedi-cms:一個輕量級但卻非常強大的 Django CMS ,考慮到了插件,内聯編輯以及性能。官網
- FeinCMS:基于 Django 建構的最先進的内容管理系統之一。官網
- Kotti:一個進階的,Python 範的 web 應用架構,基于 Pyramid 建構。官網
- Mezzanine:一個強大的,持續的,靈活的内容管理平台。官網
- Opps:一個為雜志,報紙網站以及大流量門戶網站設計的 CMS 平台,基于 Django。官網
- Plone:一個建構于開源應用伺服器 Zope 之上的 CMS。官網
- Quokka:靈活,可擴充的小型 CMS,基于 Flask 和 MongoDB。官網
- Wagtail:一個 Django 内容管理系統。官網
- Widgy:最新的 CMS 架構,基于 Django。官網
電子商務
用于電子商務以及支付的架構和庫。
- django-oscar:一個用于 Django 的開源的電子商務架構。官網
- django-shop:一個基于 Django 的店鋪系統。官網
- Cartridge:一個基于 Mezzanine 建構的購物車應用。官網
- shoop:一個基于 Django 的開源電子商務平台。官網
- alipay:非官方的 Python 支付寶 API。官網
- merchant:一個可以接收來自多種支付平台支付的 Django 應用。官網
- money:貨币類庫with optional CLDR-backed locale-aware formatting and an extensible currency exchange solution.官網
- python-currencies:顯示貨币格式以及它的數值。官網
RESTful API
用來開發RESTful APIs的庫
- Django
- django-rest-framework:一個強大靈活的工具,用來建構 web API。官網
- django-tastypie:為Django 應用開發API。官網
- django-formapi:為 Django 的表單驗證,建立 JSON APIs 。官網
- Flask
- flask-api:為 flask 開發的,可浏覽 Web APIs 。官網
- flask-restful:為 flask 快速建立REST APIs 。官網
- flask-restless:為 SQLAlchemy 定義的資料庫模型建立 RESTful APIs 。官網
- flask-api-utils:為 Flask 處理 API 表示和驗證。官網
- eve:REST API 架構,由 Flask, MongoDB 等驅動。官網
- Pyramid
- cornice:一個Pyramid 的 REST 架構 。官網
- 與架構無關的
- falcon:一個用來建立雲 API 和 web app 後端的高性能架構。官網
- sandman:為現存的資料庫驅動系統自動建立 REST APIs 。官網
- restless:架構無關的 REST 架構 ,基于從 Tastypie 學到的知識。官網
- ripozo:快速建立 REST/HATEOAS/Hypermedia APIs。官網
驗證
實作驗證方案的庫。
- OAuth
- Authomatic:簡單但是強大的架構,身份驗證/授權用戶端。官網
- django-allauth:Django 的驗證應用。官網
- django-oauth-toolkit:為 Django 使用者準備的 OAuth2。官網
- django-oauth2-provider:為 Django 應用提供 OAuth2 接入。官網
- Flask-OAuthlib:OAuth 1.0/a, 2.0 用戶端實作,供 Flask 使用。官網
- OAuthLib:一個 OAuth 請求-簽名邏輯通用、 完整的實作。官網
- python-oauth2:一個完全測試的抽象接口。用來建立 OAuth 用戶端和服務端。官網
- python-social-auth:一個設定簡單的社會化驗證方式。官網
- rauth:OAuth 1.0/a, 2.0, 和 Ofly 的 Python 庫。官網
- sanction:一個超級簡單的OAuth2 用戶端實作。官網
- 其他
- jose:JavaScript 對象簽名和加密草案的實作。官網
- PyJWT:JSON Web 令牌草案 01。官網
- python-jws:JSON Web 簽名草案 02 的實作。官網
- python-jwt:一個用來生成和驗證 JSON Web 令牌的子產品。官網
模闆引擎
模闆生成和詞法解析的庫和工具。
- Jinja2:一個現代的,對設計師友好的模闆引擎。官網
- Chameleon:一個 HTML/XML 模闆引擎。 模仿了 ZPT(Zope Page Templates), 進行了速度上的優化。官網
- Genshi:Python 模闆工具,用以生成 web 感覺的結果。官網
- Mako:Python 平台的超高速輕量級模闆。官網
Queue
處理事件以及任務隊列的庫。
- celery:一個異步任務隊列/作業隊列,基于分布式消息傳遞。官網
- huey:小型多線程任務隊列。官網
- mrq:Mr. Queue -一個 Python 的分布式 worker 任務隊列, 使用 Redis 和 gevent。官網
- rq:簡單的 Python 作業隊列。官網
- simpleq:一個簡單的,可無限擴張的,基于亞馬遜 SQS 的隊列。官網
搜尋
對資料進行索引和執行搜尋查詢的庫和軟體。
- django-haystack:Django 子產品化搜尋。官網
- elasticsearch-py:Elasticsearch 的官方底層 Python 用戶端。官網
- elasticsearch-dsl-py:Elasticsearch 的官方進階 Python 用戶端。官網
- solrpy:solr的 Python 用戶端。官網
- Whoosh:一個快速的純 Python 搜尋引擎庫。官網
動态消息
用來建立使用者活動的庫。
- django-activity-stream:從你的站點行為中生成通用活動資訊流。官網
- Stream-Framework:使用 Cassandra 和 Redis 建立動态消息和通知系統。官網
資源管理
管理、壓縮、縮小網站資源的工具。
- django-compressor:将連結和内聯的 JavaScript 或 CSS 壓縮到一個單獨的緩存檔案中。官網
- django-storages:一個針對 Django 的自定義存儲後端的工具集合。官網
- fanstatic:打包、優化,并且把靜态檔案依賴作為 Python 的包來提供。官網
- File Conveyor:一個背景駐留的程式,用來發現和同步檔案到 CDNs, S3 和 FTP。官網
- Flask-Assets:幫你将 web 資源整合到你的 Flask app 中。官網
- jinja-assets-compressor:一個 Jinja 擴充,用來編譯和壓縮你的資源。官網
- webassets:為你的靜态資源打包、優化和管理生成獨一無二的緩存 URL。官網
緩存
緩存資料的庫。
- Beaker:一個緩存和會話庫,可以用在 web 應用和獨立 Python腳本和應用上。官網
- django-cache-machine:Django 模型的自動緩存和失效。官網
- django-cacheops:具有自動顆粒化事件驅動失效功能的 ORM。官網
- django-viewlet:渲染模闆,同時具有額外的緩存控制功能。官網
- dogpile.cache:dogpile.cache 是 Beaker 的下一代替代品,由同一作者開發。官網
- HermesCache:Python 緩存庫,具有基于标簽的失效和 dogpile effect 保護功能。官網
- johnny-cache:django應用緩存架構。官網
- pylibmc:libmemcached 接口的 Python 封裝。官網
電子郵件
用來發送和解析電子郵件的庫。
- django-celery-ses:帶有 AWS SES 和 Celery 的 Django email 後端。官網
- envelopes:供人類使用的電子郵件庫。官網
- flanker:一個 email 位址和 Mime 解析庫。官網
- imbox:Python IMAP 庫官網
- inbox.py:Python SMTP 伺服器。官網
- inbox:一個開源電子郵件工具箱。官網
- lamson:Python 風格的 SMTP 應用伺服器。官網
- mailjet:Mailjet API 實作,用來提供批量發送郵件,統計等功能。官網
- marrow.mailer:高性能可擴充郵件分發架構。官網
- modoboa:一個郵件托管和管理平台,具有現代的、簡約的 Web UI。官網
- pyzmail:建立,發送和解析電子郵件。官網
- Talon:Mailgun 庫,用來抽取資訊和簽名。官網
國際化
用來進行國際化的庫。
- Babel:一個Python 的國際化庫。官網
- Korean:一個韓語詞态庫。官網
URL處理
解析URLs的庫
- furl:一個讓處理 URL 更簡單小型 Python 庫。官網
- purl:一個簡單的,不可變的URL類,具有簡潔的 API 來進行詢問和處理。官網
- pyshorteners:一個純 Python URL 縮短庫。官網
- shorturl:生成短小 URL 和類似 bit.ly 短鍊的Python 實作。官網
- webargs:一個解析 HTTP 請求參數的庫,内置對流行 web 架構的支援,包括 Flask, Django, Bottle, Tornado和 Pyramid。官網
HTML處理
處理 HTML和XML的庫。
- BeautifulSoup:以 Python 風格的方式來對 HTML 或 XML 進行疊代,搜尋和修改。官網
- bleach:一個基于白名單的 HTML 清理和文本連結庫。官網
- cssutils:一個 Python 的 CSS 庫。官網
- html5lib:一個相容标準的 HTML 文檔和片段解析及序列化庫。官網
- lxml:一個非常快速,簡單易用,功能齊全的庫,用來處理 HTML 和 XML。官網
- MarkupSafe:為Python 實作 XML/HTML/XHTML 标記安全字元串。官網
- pyquery:一個解析 HTML 的庫,類似 jQuery。官網
- untangle:将XML文檔轉換為Python對象,使其可以友善的通路。官網
- xhtml2pdf:HTML/CSS 轉 PDF 工具。官網
- xmltodict:像處理 JSON 一樣處理 XML。官網
爬取網絡站點的庫
- Scrapy:一個快速進階的螢幕爬取及網頁采集架構。官網
- cola:一個分布式爬蟲架構。官網
- Demiurge:基于PyQuery 的爬蟲微型架構。官網
- feedparser:通用 feed 解析器。官網
- Grab:站點爬取架構。官網
- MechanicalSoup:用于自動和網絡站點互動的 Python 庫。官網
- portia:Scrapy 可視化爬取。官網
- pyspider:一個強大的爬蟲系統。官網
- RoboBrowser:一個簡單的,Python 風格的庫,用來浏覽網站,而不需要一個獨立安裝的浏覽器。官網
網頁内容提取
用于進行網頁内容提取的庫。
- Haul:一個可以擴充的圖像爬取工具。官網
- html2text:将 HTML 轉換為 Markdown 格式文本官網
- lassie:人性化的網頁内容檢索庫。官網
- micawber:一個小型網頁内容提取庫,用來從 URLs 提取富内容。官網
- newspaper:使用 Python 進行新聞提取,文章提取以及内容策展。官網
- opengraph:一個用來解析開放内容協定(Open Graph Protocol)的 Python子產品。官網
- python-goose:HTML内容/文章提取器。官網
- python-readability:arc90 公司 readability 工具的 Python 高速端口。官網
- sanitize:為雜亂的資料世界帶來調理性。官網
- sumy:一個為文本檔案和 HTML 頁面進行自動摘要的子產品。官網
- textract:從任何格式的文檔中提取文本,Word,PowerPoint,PDFs 等等。官網
表單
進行表單操作的庫。
- Deform:Python HTML 表單生成庫,受到了 formish 表單生成庫的啟發。官網
- django-bootstrap3:內建了 Bootstrap 3 的 Django。官網
- django-crispy-forms:一個 Django 應用,他可以讓你以一種非常優雅且 DRY(Don’t repeat yourself) 的方式來建立美觀的表單。官網
- django-remote-forms:一個平台獨立的 Django 表單序列化工具。官網
- WTForms:一個靈活的表單驗證和呈現庫。官網
- WTForms-JSON:一個 WTForms 擴充,用來處理 JSON 資料。官網
資料驗證
資料驗證庫。多用于表單驗證。
- Cerberus:A mappings-validator with a variety of rules, normalization-features and simple customization that uses a pythonic schema-definition.官網
- colander:一個用于對從 XML, JSON,HTML 表單擷取的資料或其他同樣簡單的序列化資料進行驗證和反序列化的系統。官網
- kmatch:一種用于比對/驗證/篩選 Python 字典的語言。官網
- schema:一個用于對 Python 資料結構進行驗證的庫。官網
- Schematics:資料結構驗證。官網
- valideer:輕量級可擴充的資料驗證和适配庫。官網
- voluptuous:一個 Python 資料驗證庫。主要是為了驗證傳入 Python的 JSON,YAML 等資料。官網
反垃圾技術
幫助你和電子垃圾進行戰鬥的庫。
- django-simple-captcha:一個簡單、高度可定制的Django 應用,可以為任何Django表單添加驗證碼。官網
- django-simple-spam-blocker:一個用于Django的簡單的電子垃圾屏蔽工具。官網
标記
用來進行标記的庫。
- django-taggit:簡單的 Django 标記工具。官網
管理面闆
管理界面庫。
- Ajenti:一個你的伺服器值得擁有的管理面闆。官網
- django-suit:Django 管理界面的一個替代品 (僅對于非商業用途是免費的)。官網
- django-xadmin:Django admin 的一個替代品,具有很多不錯的功能。官網
- flask-admin:一個用于 Flask 的簡單可擴充的管理界面架構。官網
- flower:一個對 Celery 叢集進行實時監控和提供 web 管理界面的工具。官網
- Grappelli:Django 管理界面的一個漂亮的皮膚。官網
- Wooey:一個 Django 應用,可以為 Python 腳本建立 web 使用者界面。官網
靜态站點生成器
靜态站點生成器是一個軟體,它把文本和模闆作為輸入,然後輸出HTML檔案。
- Pelican:使用 Markdown 或 ReST 來處理内容, Jinja 2 來制作主題。支援 DVCS, Disqus.。AGPL 許可。官網
- Cactus:為設計師設計的靜态站點生成器。官網
- Hyde:基于 Jinja2 的靜态站點生成器。官網
- Nikola:一個靜态網站和部落格生成器。官網
- Tinkerer:Tinkerer 是一個部落格引擎/靜态站點生成器,由Sphinx驅動。官網
- Lektor:一個簡單易用的靜态 CMS 和部落格引擎。官網
程序
作業系統程序啟動及通信庫。
- envoy:比 Python subprocess 子產品更人性化。官網
- sarge:另一 種 subprocess 子產品的封裝。官網
- sh:一個完備的 subprocess 替代庫。官網
并發和并行
用以進行并發和并行操作的庫。
- multiprocessing:(Python 标準庫) 基于程序的“線程”接口。官網
- threading:(Python 标準庫)更高層的線程接口。官網
- eventlet:支援 WSGI 的異步架構。官網
- gevent:一個基于協程的 Python 網絡庫,使用greenlet。官網
- Tomorrow:用于産生異步代碼的神奇的裝飾器文法實作。官網
- uvloop:在libuv之上超快速實作asyncio事件循環。官網
網絡
用于網絡程式設計的庫。
- asyncio:(Python 标準庫) 異步 I/O, 事件循環, 協程以及任務。官網
- Twisted:一個事件驅動的網絡引擎。官網
- pulsar:事件驅動的并發架構。官網
- diesel:基于Greenlet 的事件 I/O 架構。官網
- pyzmq:一個 ZeroMQ 消息庫的 Python 封裝。官網
- txZMQ:基于 Twisted 的 ZeroMQ 消息庫的 Python 封裝。官網
WebSocket
幫助使用WebSocket的庫。
- AutobahnPython:給 Python 、使用的 WebSocket & WAMP 基于 Twisted 和 asyncio。官網
- Crossbar:開源統一應用路由(Websocket & WAMP for Python on Autobahn).官網
- django-socketio:給 Django 用的 WebSockets。官網
- WebSocket-for-Python:為Python2/3 以及 PyPy 編寫的 WebSocket 用戶端和伺服器庫。官網
WSGI 伺服器
相容 WSGI 的 web 伺服器
- gunicorn:Pre-forked, 部分是由 C 語言編寫的。官網
- uwsgi:uwsgi 項目的目的是開發一組全棧工具,用來建立托管服務, 由 C 語言編寫。官網
- bjoern:異步,非常快速,由 C 語言編寫。官網
- fapws3:異步 (僅對于網絡端),由 C 語言編寫。官網
- meinheld:異步,部分是由 C 語言編寫的。官網
- netius:異步,非常快速。官網
- paste:多線程,穩定,久經考驗。官網
- rocket:多線程。官網
- waitress:多線程, 是它驅動着 Pyramid 架構。官網
- Werkzeug:一個 WSGI 工具庫,驅動着 Flask ,而且可以很友善大嵌入到你的項目中去。官網
RPC 伺服器
相容 RPC 的伺服器。
- SimpleJSONRPCServer:這個庫是 JSON-RPC 規範的一個實作。官網
- SimpleXMLRPCServer:(Python 标準庫) 簡單的 XML-RPC 伺服器實作,單線程。官網
- zeroRPC:zerorpc 是一個靈活的 RPC 實作,基于 ZeroMQ 和 MessagePack。官網
密碼學
- cryptography:這個軟體包意在提供密碼學基本内容和方法提供給 Python 開發者。官網
- hashids:在 Python 中實作 hashids 。官網
- Paramiko:SSHv2 協定的 Python (2.6+, 3.3+) ,提供用戶端和服務端的功能。官網
- Passlib:安全密碼存儲/哈希庫,官網
- PyCrypto:Python 密碼學工具箱。官網
- PyNacl:網絡和密碼學(NaCl) 庫的 Python 綁定。官網
圖形使用者界面
用來建立圖形使用者界面程式的庫。
- curses:内建的 ncurses 封裝,用來建立終端圖形使用者界面。官網
- enaml:使用類似 QML 的Declaratic文法來建立美觀的使用者界面。官網
- kivy:一個用來建立自然使用者互動(NUI)應用程式的庫,可以運作在 Windows, Linux, Mac OS X, Android 以及 iOS平台上。官網
- pyglet:一個Python 的跨平台視窗及多媒體庫。官網
- PyQt:跨平台使用者界面架構 Qt 的 Python 綁定 ,支援Qt v4 和 Qt v5。官網
- PySide:P跨平台使用者界面架構 Qt 的 Python 綁定 ,支援Qt v4。官網
- Tkinter:Tkinter 是 Python GUI 的一個事實标準庫。官網
- Toga:一個 Python 原生的, 作業系統原生的 GUI 工具包。官網
- urwid:一個用來建立終端 GUI 應用的庫,支援元件,事件和豐富的色彩等。官網
- wxPython:wxPython 是 wxWidgets C++ 類庫和 Python 語言混合的産物。官網
- PyGObject:GLib/GObject/GIO/GTK+ (GTK+3) 的 Python 綁定官網
- Flexx:Flexx 是一個純 Python 語言編寫的用來建立 GUI 程式的工具集,它使用 web 技術進行界面的展示。官網
遊戲開發
超贊的遊戲開發庫。
- Cocos2d:cocos2d 是一個用來開發 2D 遊戲, 示例和其他圖形/互動應用的架構。基于 pyglet。官網
- Panda3D:由迪士尼開發的 3D 遊戲引擎,并由卡内基梅隴娛樂技術中心負責維護。使用C++編寫, 針對 Python 進行了完全的封裝。官網
- Pygame:Pygame 是一組 Python 子產品,用來編寫遊戲。官網
- PyOgre:Ogre 3D 渲染引擎的 Python 綁定,可以用來開發遊戲和仿真程式等任何 3D 應用。官網
- PyOpenGL:OpenGL 的 Python 綁定及其相關 APIs。官網
- PySDL2:SDL2 庫的封裝,基于 ctypes。官網
- RenPy:一個視覺小說(visual novel)引擎。官網
日志
用來生成和記錄檔的庫。
- logging:(Python 标準庫) 為 Python 提供日志功能。官網
- logbook:Logging 庫的替代品。官網
- Eliot:為複雜的和分布式系統建立日志。官網
- Raven:Sentry的 Python 用戶端。官網
- Sentry:實時記錄和收集日志的伺服器。官網
Testing
進行代碼庫測試和生成測試資料的庫。
- 測試架構
- unittest:(Python 标準庫) 單元測試架構。官網
- nose:nose 擴充了 unittest 的功能。官網
- contexts:一個 Python 3.3+ 的 BDD 架構。受到C# – Machine.Specifications的啟發。官網
- hypothesis:Hypothesis 是一個基于先進的 Quickcheck 風格特性的測試庫。官網
- mamba:Python 的終極測試工具, 擁護BDD。官網
- PyAutoGUI:PyAutoGUI 是一個人性化的跨平台 GUI 自動測試子產品。官網
- pyshould:Should 風格的斷言,基于 PyHamcrest。官網
- pytest:一個成熟的全功能 Python 測試工具。官網
- green:幹淨,多彩的測試工具。官網
- pyvows:BDD 風格的測試工具,受Vows.js的啟發。官網-
- Robot Framework:一個通用的自動化測試架構。官網
- Web 測試
- Selenium:Selenium WebDriver 的 Python 綁定。官網
- locust:使用 Python 編寫的,可擴充的使用者加載測試工具。官網
- sixpack:一個和語言無關的 A/B 測試架構。官網
- splinter:開源的 web 應用測試工具。官網
- Mock測試
- mock:(Python 标準庫) 一個用于僞造測試的庫。官網
- doublex:Python 的一個功能強大的 doubles 測試架構。官網
- freezegun:通過僞造日期子產品來生成不同的時間。官網
- httmock:針對 Python 2.6+ 和 3.2+ 生成 僞造請求的庫。官網
- httpretty:Python 的 HTTP 請求 mock 工具。官網
- responses:僞造 Python 中的 requests 庫的一個通用庫。官網
- VCR.py:在你的測試中記錄和重放 HTTP 互動。官網
- 對象工廠
- factoryboy:一個 Python 用的測試固件 (test fixtures) 替代庫。官網
- mixer:另外一個測試固件 (test fixtures) 替代庫,支援 Django, Flask, SQLAlchemy, Peewee 等。官網
- modelmommy:為 Django 測試建立随機固件官網
- 代碼覆寫率
- coverage:代碼覆寫率測量。官網
- 僞資料
- faker:一個 Python 庫,用來生成僞資料。官網
- fake2db:僞資料庫生成器。官網
- radar:生成随機的日期/時間。官網
- 錯誤處理
- FuckIt.py:FuckIt.py 使用最先進的技術來保證你的 Python 代碼無論對錯都能繼續運作。官網
代碼分析和Lint工具
進行代碼分析,解析和操作代碼庫的庫和工具。
- 代碼分析
- coala:語言獨立和易于擴充的代碼分析應用程式。官網
- code2flow:把你的 Python 和 JavaScript 代碼轉換為流程圖。官網
- pycallgraph:這個庫可以把你的Python 應用的流程(調用圖)進行可視化。官網
- pysonar2:Python 類型推斷和檢索工具。官網
- Lint工具
- Flake8:子產品化源碼檢查工具: pep8, pyflakes 以及 co。官網
- Pylint:一個完全可定制的源碼分析器。官網
- YAPF: Google的Python代碼格式化工具。官網
- pylama:Python 和 JavaScript 的代碼審查工具。官網
- 代碼格式化
- autopep8:自動格式化 Python 代碼,以使其符合 PEP8 規範。官網
Debugging Tools
用來進行代碼調試的庫。
- 調試器
- ipdb:IPython 啟用的 pdb。官網
- pudb:全屏,基于控制台的 Python 調試器。官網
- pyringe:可以在 Python 程序中附加和注入代碼的調試器。官網
- wdb:一個奇異的 web 調試器,通過 WebSockets 工作。官網
- winpdb:一個具有圖形使用者界面的 Python 調試器,可以進行遠端調試,基于 rpdb2。官網
- django-debug-toolbar:為 Django 顯示各種調試資訊。官網
- django-devserver:一個 Django 運作伺服器的替代品。官網
- flask-debugtoolbar:django-debug-toolbar 的 flask 版。官網
- 性能分析器
- lineprofiler:逐行性能分析。官網
- Memory Profiler:監控 Python 代碼的記憶體使用。官網、記憶體
- profiling:一個互動式 Python 性能分析工具。官網
- 其他
- pyelftools:解析和分析 ELF 檔案以及 DWARF 調試資訊。官網
- python-statsd:statsd 伺服器的 Python 用戶端。官網
Science and Data Analysis
用來進行科學計算和資料分析的庫。
- astropy:一個天文學 Python 庫。官網
- bcbio-nextgen:這個工具箱為全自動高通量測序分析提供符合最佳實踐的處理流程。官網
- bccb:生物分析相關代碼集合官網
- Biopython:Biopython 是一組可以免費使用的用來進行生物計算的工具。官網
- blaze:NumPy 和 Pandas 的大資料接口。官網
- cclib:一個用來解析和解釋計算化學軟體包輸出結果的庫。官網
- NetworkX:一個為複雜網絡設計的高性能軟體。官網
- Neupy:執行和測試各種不同的人工神經網絡算法。官網
- Numba:Python JIT (just in time) 編譯器,針對科學用的 Python ,由Cython 和 NumPy 的開發者開發。官網
- NumPy:使用 Python 進行科學計算的基礎包。官網
- Open Babel:一個化學工具箱,用來描述多種化學資料。官網
- Open Mining:使用 Python 挖掘商業情報 (BI) (Pandas web 接口)。官網
- orange:通過可視化程式設計或 Python 腳本進行資料挖掘,資料可視化,分析和機器學習。官網
- Pandas:提供高性能,易用的資料結構和資料分析工具。官網
- PyDy:PyDy 是 Python Dynamics 的縮寫,用來為動力學運動模組化工作流程提供幫助, 基于 NumPy, SciPy, IPython 和 matplotlib。官網
- PyMC:馬爾科夫鍊蒙特卡洛采樣工具。官網
- RDKit:化學資訊學和機器學習軟體。官網
- SciPy:由一些基于 Python ,用于數學,科學和工程的開源軟體構成的生态系統。官網
- statsmodels:統計模組化和計量經濟學。官網
- SymPy:一個用于符号數學的 Python 庫。官網
- zipline:一個 Python 算法交易庫。官網
- Bayesian-belief-networks:優雅的貝葉斯信念網絡架構。官網
- keras: 以tensorflow或者theano為後端的深度學習封裝庫,快速上手神經網絡官網
資料可視化
進行資料可視化的庫。 參見: awesome-javascript。
- matplotlib:一個 Python 2D 繪圖庫。官網
- bokeh:用 Python 進行互動式 web 繪圖。官網
- ggplot:ggplot2 給 R 提供的 API 的 Python 版本。官網
- plotly:協同 Python 和 matplotlib 工作的 web 繪圖庫。官網
- pygal:一個 Python SVG 圖表建立工具。官網
- pygraphviz:Graphviz 的 Python 接口。官網
- PyQtGraph:互動式實時2D/3D/圖像繪制及科學/工程學元件。官網
- SnakeViz:一個基于浏覽器的 Python’s cProfile 子產品輸出結果檢視工具。官網
- vincent:把 Python 轉換為 Vega 文法的轉換工具。官網
- VisPy:基于 OpenGL 的高性能科學可視化工具。官網
計算機視覺
計算機視覺庫。
- OpenCV:開源計算機視覺庫。官網
- pyocr:Tesseract和Cuneiform的包裝庫。官網
- pytesseract:Google Tesseract OCR的另一包裝庫。官網
- SimpleCV:一個用來建立計算機視覺應用的開源架構。官網
機器學習
機器學習庫。 參見: awesome-machine-learning.
- Crab:靈活、快速的推薦引擎。官網
- gensim:人性化的話題模組化庫。官網
- hebel:GPU 加速的深度學習庫。官網
- NuPIC:智能計算 Numenta 平台。官網
- pattern:Python 網絡挖掘子產品。官網
- PyBrain:另一個 Python 機器學習庫。官網
- Pylearn2:一個基于 Theano 的機器學習庫。官網
- python-recsys:一個用來實作推薦系統的 Python 庫。官網
- scikit-learn:基于 SciPy 建構的機器學習 Python 子產品。官網
- pydeep:Python 深度學習庫。官網
- vowpalporpoise:輕量級 Vowpal Wabbit 的 Python 封裝。官網
- skflow:一個 TensorFlow 的簡化接口(模仿 scikit-learn)。官網
- Caffe: 一個Caffe的python接口。官網
MapReduce
MapReduce 架構和庫。
- dpark:Spark 的 Python 克隆版,一個類似 MapReduce 的架構。官網
- dumbo:這個 Python 子產品可以讓人輕松的編寫和運作 Hadoop 程式。官網
- luigi:這個子產品幫你建構批處理作業的複雜流水線。官網
- mrjob:在 Hadoop 或 Amazon Web Services 上運作 MapReduce 任務。官網
- PySpark:Spark 的 Python API 。官網
- streamparse:運作針對事實資料流的 Python 代碼。內建了Apache Storm。官網
函數式程式設計
使用 Python 進行函數式程式設計。
- CyToolz:Toolz 的 Cython 實作 : 高性能函數式工具。官網
- fn.py:在 Python 中進行函數式程式設計 : 實作了一些享受函數式程式設計缺失的功能。官網
- funcy:炫酷又實用的函數式工具。官網
- Toolz:一組用于疊代器,函數和字典的函數式程式設計工具。官網
第三方 API
用來通路第三方 API的庫。 參見: List of Python API Wrappers and Libraries。
- apache-libcloud:一個為各種雲設計的 Python 庫。官網
- boto:Amazon Web Services 的 Python 接口。官網
- django-wordpress:WordPress models and views for Django.官網
- facebook-sdk:Facebook 平台的 Python SDK.官網
- facepy:Facepy 讓和 Facebook’s Graph API 的互動變得更容易。官網
- gmail:Gmail 的 Python 接口。官網
- google-api-python-client:Python 用的 Google APIs 用戶端庫。官網
- gspread:Google 電子表格的 Python API.官網
- twython:Twitter API 的封裝。官網
DevOps 工具
用于 DevOps 的軟體和庫。
- Ansible:一個非常簡單的 IT 自動化平台。官網
- SaltStack:基礎設施自動化和管理系統。官網
- OpenStack:用于建構私有和公有雲的開源軟體。官網
- Docker Compose:快速,分離的開發環境,使用 Docker。官網
- Fabric:一個簡單的,Python 風格的工具,用來進行遠端執行和部署。官網
- cuisine:為 Fabric 提供一系列進階函數。官網
- Fabtools:一個用來編寫超贊的 Fabric 檔案的工具。官網
- gitapi:Git 的純 Python API。官網
- hgapi:Mercurial 的純 Python API。官網
- honcho:Foreman的 Python 克隆版,用來管理基于Procfile的應用。官網
- pexpect:Controlling interactive programs in a pseudo-terminal like 在一個僞終端中控制互動程式,就像 GNU expect 一樣。官網
- psutil:一個跨平台程序和系統工具子產品。官網
- supervisor:UNIX 的程序控制系統。官網
任務排程
任務排程庫。
- APScheduler:輕巧但強大的程序内任務排程,使你可以排程函數。官網
- django-schedule:一個 Django 排程應用。官網
- doit:一個任務執行和建構工具。官網
- gunnery:分布式系統使用的多用途任務執行工具 ,具有 web 互動界面。官網
- Joblib:一組為 Python 提供輕量級作業流水線的工具。官網
- Plan:如有神助地編寫 crontab 檔案。官網
- schedule:人性化的 Python 任務排程庫。官網
- Spiff:使用純 Python 實作的強大的工作流引擎。官網
- TaskFlow:一個可以讓你友善執行任務的 Python 庫,一緻并且可靠。官網
外來函數接口
使用外來函數接口的庫。
- cffi:用來調用 C 代碼的外來函數接口。官網
- ctypes:(Python 标準庫) 用來調用 C 代碼的外來函數接口。官網
- PyCUDA:Nvidia CUDA API 的封裝。官網
- SWIG:簡化的封裝和接口生成器。官網
高性能
讓 Python 更快的庫。
- Cython:優化的 Python 靜态編譯器。使用類型混合使 Python 編譯成 C 或 C++ 子產品來獲得性能的極大提升。官網
- PeachPy:嵌入 Python 的 x86-64 彙編器。可以被用作 Python 内聯的彙編器或者是獨立的彙編器,用于 Windows, Linux, OS X, Native Client 或者 Go 。官網
- PyPy:使用 Python 實作的 Python。解釋器使用黑魔法加快 Python 運作速度且不需要加入額外的類型資訊。官網
- Pyston:使用 LLVM 和現代 JIT 技術建構的 Python 實作,目标是為了獲得很好的性能。官網
- Stackless Python:一個強化版的 Python。官網
微軟的 Windows平台
在 Windows 平台上進行 Python 程式設計。
- Python(x,y):面向科學應用的 Python 發行版,基于 Qt 和 Spyder。官網
- pythonlibs:非官方的 Windows 平台 Python 擴充二進制包。官網
- PythonNet:Python 與 .NET 公共語言運作庫 (CLR)的內建。官網
- PyWin32:針對 Windows 的Python 擴充。官網
- WinPython:Windows 7/8 系統下便攜式開發環境。官網
網絡可視化和SDN
用來進行網絡可視化和SDN(軟體定義網絡)的工具和庫。
- Mininet:一款流行的網絡模拟器以及用 Python 編寫的 API。官網
- POX:一個針對基于 Python 的軟體定義網絡應用(例如 OpenFlow SDN 控制器)的開源開發平台。官網
- Pyretic:火熱的 SDN 程式設計語言中的一員,為網絡交換機和模拟器提供強大的抽象能力。官網
- SDX Platform:基于 SDN 的 IXP 實作,影響了 Mininet, POX 和 Pyretic。官網
硬體
用來對硬體進行程式設計的庫。
- ino:操作Arduino的指令行工具。官網
- Pyro:Python 機器人程式設計庫。官網
- PyUserInput:跨平台的,控制滑鼠和鍵盤的子產品。官網
- scapy:一個非常棒的操作資料包的庫。官網
- wifi:一個 Python 庫和指令行工具用來在 Linux 平台上操作WiFi。官網
- Pingo:Pingo 為類似Raspberry Pi,pcDuino, Intel Galileo等裝置提供統一的API用以程式設計。官網
相容性
幫助從 Python 2 向 Python 3遷移的庫。
- Python-Future:這就是 Python 2 和 Python 3 之間丢失的那個相容性層。官網
- Python-Modernize:使 Python 代碼更加現代化以便最終遷移到 Python 3。官網
- Six:Python 2 和 3 的相容性工具。官網
雜項
不屬于上面任何一個類别,但是非常有用的庫。
- blinker:一個快速的 Python 程序内信号/事件分發系統。官網
- itsdangerous:一系列輔助工具用來将可信的資料傳入不可信的環境。官網
- pluginbase:一個簡單但是非常靈活的 Python 插件系統。官網
- Pychievements:一個用來建立和追蹤成就的 Python 架構。官網
- Tryton:一個通用商務架構。官網
算法和設計模式
Python 實作的算法和設計模式。
- algorithms:一個 Python 算法子產品。官網
- python-patterns:Python 設計模式的集合。官網
- sortedcontainers:快速,純 Python 實作的SortedList,SortedDict 和 SortedSet 類型。官網
編輯器插件
編輯器和 IDE 的插件
- Emacs
- Elpy:Emacs Python 開發環境。官網
- Sublime Text
- SublimeJEDI:一個 Sublime Text 插件,用來使用超贊的自動補全庫 Jedi。官網
- Anaconda:Anaconda 把你的 Sublime Text 3 變成一個功能齊全的 Python IDE。官網
- Vim
- YouCompleteMe:引入基于 Jedi 的 Python 自動補全引擎。官網
- Jedi-vim:綁定 Vim 和 Jedi 自動補全庫對 Python 進行自動補全。官網
- Python-mode:将 Vim 變成 Python IDE 的一款多合一插件。官網
- Visual Studio
- PTVS:Visual Studio 的 Python 工具官網
內建開發環境
流行的 Python 內建開發環境。
- PyCharm:商業化的 Python IDE ,由 JetBrains 開發。也有免費的社群版提供。官網
- LiClipse:基于 Eclipse 的免費多語言 IDE 。使用 PyDev 來支援 Python 。官網
- Spyder:開源 Python IDE。官網
自動聊天工具
用于開發聊天機器人的庫
- Errbot:最簡單和最流行的聊天機器人用來實作自動聊天工具。官網
服務
線上工具和簡化開發的 API 。
持續內建
參見: awesome-CIandCD.
- Travis CI:一個流行的工具,為你的開源和私人項目提供持續內建服務。(僅支援 GitHub)官網
- CircleCI:一個持續內建工具,可以非常快速的進行并行測試。 (僅支援 GitHub)官網
- Vexor CI:一個為私人 app 提供持續內建的工具,支援按分鐘付費。官網
- Wercker:基于 Docker 平台,用來建構和部署微服務。官網
代碼品質
- Codacy:自動化代碼審查,更加快速的釋出高品質代碼。對于開源項目是免費的。官網
- QuantifiedCode:一個資料驅動、自動、持續的代碼審查工具。官網
資源
在這裡可以找到新的 Python 庫。
網站
- r/Python
- CoolGithubProjects
- Django Packages
- Full Stack Python
- Python 3 Wall of Superpowers
- Python Hackers
- Python ZEEF
- Trending Python repositories on GitHub today
- PyPI Ranking
周刊
- Import Python Newsletter
- Pycoder’s Weekly
- Python Weekly
- @codetengu
- @getpy
- @planetpython
- @pycoders
- @pypi
- @pythontrending
- @PythonWeekly
學習指南
- Scipy-lecture-notes:如何用Python來做學術?官網
- SScientific-python-lectures:Python科學計算的資料。官網
- Mario-Level-1:用Python和Pygame寫的超級馬裡奧第一關。官網
- Python Koans:Python的互動式學習工具。官網
- Minecraft:用python寫的Minecraft遊戲。官網
- pycrumbs:Python資源大全。官網
- python-patterns:使用python實作設計模式。官網
- Projects:Python項目大集合。官網
- The Hitchhiker’s Guide to Python:旅行者的Python學習指南。官網
- Code Like a Pythonista: Idiomatic Python:如何像Python高手(Pythonista)一樣程式設計。官網
- 《值得關注的 10 個 Python 英文部落格》