1. 程式人生 > >python入門|20年的大佬私藏的python庫大全

python入門|20年的大佬私藏的python庫大全

環境管理

管理 Python 版本和環境的工具

p:非常簡單的互動式 python 版本管理工具。

pyenv:簡單的 Python 版本管理工具。

Vex:可以在虛擬環境中執行命令。

virtualenv:建立獨立 Python 環境的工具。

virtualenvwrapper:virtualenv 的一組擴充套件。

自學python的路真的好難,小編要跪了。
小編Q君羊883444106

分發

打包為可執行檔案以便分發。

PyInstaller:將 Python 程式轉換成獨立的執行檔案(跨平臺)。

dh-virtualenv:構建並將 virtualenv 虛擬環境作為一個 Debian 包來發布。

Nuitka:將指令碼、模組、包編譯成可執行檔案或擴充套件模組。

py2app:將 Python 指令碼變為獨立軟體包(Mac OS X)。

py2exe:將 Python 指令碼變為獨立軟體包(Windows)。

pynsist:一個用來建立 Windows 安裝程式的工具,可以在安裝程式中打包 Python本身。

將原始碼編譯成軟體。

buildout:一個構建系統,從多個元件來建立,組裝和部署應用。

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 工具。

通用

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編碼、解碼器。

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 解析器。

特殊文字格式處理

一些用來解析和操作特殊文字格式的庫。

PDF

PDFMiner:一個用於從PDF文件中抽取資訊的工具。

PyPDF2:一個可以分割,合併和轉換 PDF 頁面的庫。

ReportLab:快速建立富文字 PDF 文件。

Markdown

Mistune:快速並且功能齊全的純 Python 實現的 Markdown 解析器。

Python-Markdown:John Gruber’s Markdown 的 Python 版實現。

Python-Markdown2:純 Python 實現的 Markdown 解析器,比 Python-Markdown 更快,更準確,可擴充套件。

PyYAML:Python 版本的 YAML 解析器。

CSV

csvkit:用於轉換和操作 CSV 的工具。

Archive

unp:一個用來方便解包歸檔檔案的命令列工具。

自然語言處理

用來處理人類語言的庫。

NLTK:一個先進的平臺,用以構建處理人類語言資料的 Python 程式。

jieba:中文分詞工具。

langid.py:獨立的語言識別系統。

Pattern:Python 網路資訊挖掘模組。

SnowNLP:一個用來處理中文文字的庫。

TextBlob:為進行普通自然語言處理任務提供一致的 API。

TextGrocery:一簡單高效的短文字分類工具,基於 LibLinear 和 Jieba。

cement:Python 的命令列程式框架。

click:一個通過組合的方式來建立精美命令列介面的包。

cliff:一個用於建立命令列程式的框架,可以建立具有多層命令的命令列程式。

clint:Python 命令列程式工具。

colorama:跨平臺彩色終端文字。

docopt:Python 風格的命令列引數解析器。

Gooey:一條命令,將命令列程式變成一個 GUI 程式。

python-prompt-toolkit:一個用於構建強大的互動式命令列程式的庫。

Pythonpy:在命令列中直接執行任何Python指令。

下載器

用來進行下載的庫.

s3cmd:一個用來管理Amazon S3 和 CloudFront 的命令列工具。

s4cmd:超級 S3 命令列工具,效能更加強勁。

you-get:一個 YouTube/Youku/Niconico 視訊下載器,使用 Python3 編寫。

youtube-dl:一個小巧的命令列程式,用來下載 YouTube 視訊。

OCR

光學字元識別庫。

pyocr:Tesseract 和 Cuneiform 的一個封裝(wrapper)。

pytesseract:Google Tesseract OCR 的另一個封裝(wrapper)。

python-tesseract - Google Tesseract OCR 的一個包裝類。

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的庫。

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 客戶端。

telephus:基於 Twisted 的 Cassandra 客戶端。

txRedis:基於 Twisted 的 Redis 客戶端。

實現物件關係對映或資料對映技術的庫。

關係型資料庫

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 框架。

Flask:一個 Python 微型框架。

awesome-flask系列

pyramid:一個小巧,快速,接地氣的開源Python web 框架。

awesome-pyramid系列

Bottle:一個快速小巧,輕量級的 WSGI 微型 web 框架。

CherryPy:一個極簡的 Python web 框架,服從 HTTP/1.1 協議且具有WSGI 執行緒池。

TurboGears:一個可以擴充套件為全棧解決方案的微型框架。

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。

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

django-rest-framework:一個強大靈活的工具,用來構建 web API。

django-formapi:為 Django 的表單驗證,建立 JSON APIs 。

Flask

flask-api:為 flask 開發的,可瀏覽 Web APIs 。

flask-restful:為 flask 快速建立REST APIs 。

flask-restless:為 SQLAlchemy 定義的資料庫模型建立 RESTful APIs 。

eve:REST API 框架,由 Flask, MongoDB 等驅動。

Pyramid

cornice:一個Pyramid 的 REST 框架 。

與框架無關的

falcon:一個用來建立雲 API 和 web app 後端的高效能框架。

sandman:為現存的資料庫驅動系統自動建立 REST APIs 。

restless:框架無關的 REST 框架 ,基於從 Tastypie 學到的知識。

ripozo:快速建立 REST/HATEOAS/Hypermedia APIs。

驗證

實現驗證方案的庫。

Jinja2:一個現代的,對設計師友好的模板引擎。

Chameleon:一個 HTML/XML 模板引擎。 模仿了 ZPT(Zope Page Templates), 進行了速度上的優化。

Genshi:Python 模板工具,用以生成 web 感知的結果。

Mako:Python 平臺的超高速輕量級模板。

處理事件以及任務佇列的庫。

celery:一個非同步任務佇列/作業佇列,基於分散式訊息傳遞。

huey:小型多執行緒任務佇列。

mrq:Mr. Queue -一個 Python 的分散式 worker 任務佇列, 使用 Redis 和 gevent。

simpleq:一個簡單的,可無限擴張的,基於亞馬遜 SQS 的佇列。

對資料進行索引和執行搜尋查詢的庫和軟體。

django-haystack:Django 模組化搜尋。

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-cacheops:具有自動顆粒化事件驅動失效功能的 ORM。

django-viewlet:渲染模板,同時具有額外的快取控制功能。

dogpile.cache:dogpile.cache 是 Beaker 的下一代替代品,由同一作者開發。

HermesCache:Python 快取庫,具有基於標籤的失效和 dogpile effect 保護功能。

johnny-cache:django應用快取框架。

pylibmc:libmemcached 介面的 Python 封裝。

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。

資料驗證

資料驗證庫。多用於表單驗證。

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 字典的語言。

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 管理介面的一個漂亮的面板。

靜態站點生成器

靜態站點生成器是一個軟體,它把文字和模板作為輸入,然後輸出HTML檔案。

Pelican:使用 Markdown 或 ReST 來處理內容, Jinja 2 來製作主題。支援 DVCS, Disqus.。AGPL 許可。

Cactus:為設計師設計的靜態站點生成器。

Hyde:基於 Jinja2 的靜態站點生成器。

Nikola:一個靜態網站和部落格生成器。

Tinkerer:Tinkerer 是一個部落格引擎/靜態站點生成器,由Sphinx驅動。

Lektor:一個簡單易用的靜態 CMS 和部落格引擎。

程序

作業系統程序啟動及通訊庫。

envoy:比 Python subprocess 模組更人性化。

sh:一個完備的 subprocess 替代庫。

併發和並行

用以進行併發和並行操作的庫。

multiprocessing:(Python 標準庫) 基於程序的“執行緒”介面。

threading:(Python 標準庫)更高層的執行緒介面。

eventlet:支援 WSGI 的非同步框架。

Tomorrow:用於產生非同步程式碼的神奇的裝飾器語法實現。

uvloop:在libuv之上超快速實現asyncio事件迴圈。

netius:非同步,非常快速。

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:乾淨,多彩的測試工具。

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 的開發者開發。

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 模組輸出結果檢視工具。

VisPy:基於 OpenGL 的高效能科學視覺化工具。

計算機視覺

計算機視覺庫。

OpenCV:開源計算機視覺庫。

pyocr:Tesseract和Cuneiform的包裝庫。

pytesseract:Google Tesseract OCR的另一包裝庫。

SimpleCV:一個用來建立計算機視覺應用的開源框架。

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 的封裝。

任務排程

任務排程庫。

APScheduler:輕巧但強大的程序內任務排程,使你可以排程函式。

doit:一個任務執行和構建工具。

Plan:如有神助地編寫 crontab 檔案。

schedule:人性化的 Python 任務排程庫。

Spiff:使用純 Python 實現的強大的工作流引擎。

TaskFlow:一個可以讓你方便執行任務的 Python 庫,一致並且可靠。

外來函式介面

網路視覺化和SDN

用來進行網路視覺化和SDN(軟體定義網路)的工具和庫。

Mininet:一款流行的網路模擬器以及用 Python 編寫的 API。

POX:一個針對基於 Python 的軟體定義網路應用(例如 OpenFlow SDN 控制器)的開源開發平臺。

Pyretic:火熱的 SDN 程式語言中的一員,為網路交換機和模擬器提供強大的抽象能力。

SDX Platform:基於 SDN 的 IXP 實現,影響了 Mininet, POX 和 Pyretic。

雜項

不屬於上面任何一個類別,但是非常有用的庫。

blinker:一個快速的 Python 程序內訊號/事件分發系統。

itsdangerous:一系列輔助工具用來將可信的資料傳入不可信的環境。

pluginbase:一個簡單但是非常靈活的 Python 外掛系統。

Pychievements:一個用來建立和追蹤成就的 Python 框架。

演算法和設計模式

Python 實現的演算法和設計模式。

algorithms:一個 Python 演算法模組。

python-patterns:Python 設計模式的集合。

sortedcontainers:快速,純 Python 實現的SortedList,SortedDict 和 SortedSet 型別。

編輯器外掛

編輯器和 IDE 的外掛

持續整合

參見: awesome-CIandCD.

Travis CI:一個流行的工具,為你的開源和私人專案提供持續整合服務。

Vexor CI:一個為私人 app 提供持續整合的工具,支援按分鐘付費。

Wercker:基於 Docker 平臺,用來構建和部署微服務。

程式碼質量

Codacy:自動化程式碼審查,更加快速的釋出高質量程式碼。對於開源專案是免費的。

QuantifiedCode:一個數據驅動、自動、持續的程式碼審查工具。

跪求大佬指教!