整理了上千个 Python 工具库,涵盖24个大方向
Python 生態,向來以各種類庫齊全而聞名,這也是這門語言如此受歡迎的重要原因。
今天就給大家分享一下這幾天的戰果,宵衣旰食,不眠不休的整理了近千個 Python 庫,梳理不易啊,收藏的同時,記得點贊支持
文章目錄
- 技術提升
- 1、數據處理
- 文本處理
- 特殊文本處理
- HTML/XML 解析
- 文件處理
- 配置文件處理
- 文檔相關
- 日志管理
- 日期和時間
- 2、圖像處理
- 圖像處理
- OCR
- 3、網絡相關
- 下載
- HTTP
- 網絡可視化
- URL 處理
- 網絡爬蟲
- 網頁內容提取
- WebSocket
- RPC
- 4、Web 框架
- 全??蚣?/li>
- CMS
- Web 權限/安全
- 商務框架
- Restful API
- 模板引擎
- 隊列
- 搜索
- 動態消息
- 資源管理
- 緩存
- 表單
- 數據驗證
- 電子郵件
- URL
- 國際化
- 管理面板
- 靜態站點生成
- WSGI 服務器
- ORM
- 5、地理位置
- 6、系統
- 進程
- 并發/并行
- 7、數據庫相關
- Python 實現的數據庫
- 數據庫驅動
- 8、安全
- OAuth
- 密碼
- 其他
- 9、人工智能
- 自然語言處理
- 計算機視覺
- 機器學習/深度學習
- 10、科學計算與數據分析
- 數據處理
- 數據可視化
- 11、GUI 與游戲開發
- GUI
- 游戲開發
- 12、音視頻
- 音頻
- 視頻
- 13、測試相關
- 測試框架
- Web 測試
- Mock 測試
- 對象工廠
- 代碼覆蓋率
- 偽數據
- 14、代碼工具
- 代碼分析
- Lint 工具
- 代碼格式化
- 調試器
- 性能分析
- 日志
- 持續集成
- 代碼質量
- 15、DevOps
- 16、任務調度
- 17、高性能
- 18、Windows 環境
- 19、硬件相關
- 20、環境與包管理
- 環境管理
- 包管理
- 包倉庫
- 21、分發與構建
- 軟件分發
- 構建
- 交互式解釋器
- 22、命令行相關
- 命令行工具
- 命令行高級工具
- 23、第三方
- API
- 外來函數接口
- 24、其他
- MapReduce
- 函數式編程
- 兼容性
- 編輯器插件
- 自動聊天工具
- 金融數據
- 算法和設計模式
- 雜七雜八
技術提升
好的文章離不開粉絲的支持,資料梳理、資料分享、數據、技術交流提升,均可加交流群獲取,群友已超過2000人,添加時最好的備注方式為:來源+興趣方向,方便找到志同道合的朋友
方式①、添加微信號:dkl88191,備注:來自CSDN
方式②、微信搜索公眾號:Python學習與數據挖掘,后臺回復:加群
1、數據處理
文本處理
-
chardet:字符編碼檢測器,該庫可以檢測文本、網頁、xml等多種文件格式的編碼
-
difflib:文本差異比較
-
ftfy:使程序更加完美的支持 Unicode 編碼
-
fuzzywuzzy:可以進行字符串的模糊匹配
-
Levenshtein:計算各種距離以及字符串相似度
-
pangu.py:調整中日韓文字當中的字母、數字間距
-
pypinyin:漢字拼音轉換工具
-
shortuuid:用來生成 UUID
-
simplejson:JSON 編碼、解碼器
-
unidecode:Unicode 格式操作
-
uniout:打印字符,不進行轉義
-
xpinyin:把漢字轉換為拼音
-
yfiglet-figlet:pyfiglet -figlet 的 Python 實現
-
flashtext: 用于文本查找替換
-
esmre:加速正則表達式
-
awesome slugify:用于處理 Unicode
-
python-slugify:把 unicode 轉化為 ASCII
-
unicode-slugify:可以生成 unicode slugs,依賴與 Django
-
phonenumbers:用于解析、格式化、儲存和驗證電話號碼
-
PLY:lex 和 yacc 解析工具
-
Pygments:語法高亮工具
-
pyparsing:可以生成通用解析器
-
python-nameparser:把人名分解為幾個獨立的部分
-
python-user-agents:瀏覽器 user agent 解析器
-
sqlparse:SQL 解析器
特殊文本處理
-
tablib:用來處理表格數據
-
Marmir:把 Python 數據結構轉換為電子表單
-
openpyxl:用來讀寫 Excel 文件的庫
-
pyexcel:一個提供統一 API,用來操作 Excel 文件的庫
-
python-docx:操作 Word 文件
-
relatorio:模板化 OpenDocument 文件
-
unoconv:轉換 LibreOffice/OpenOffice 文件格式
-
XlsxWriter:用于創建 Excel.xlsx 文件
-
xlwings:一個在 Excel 中調用 Python 的庫
-
xlwt/xlrd:讀寫 Excel 文件的數據
-
PDFMiner:一個用于從 PDF 文檔中抽取信息的庫
-
PyPDF2:一個可以進行多種操作 PDF 頁面的庫
-
ReportLab:可以創建富文本 PDF 文檔
-
Mistune:Markdown 解析器
-
Python-Markdown:有一個 Markdown 解析器
-
Python-Markdown2:純 Python 實現的 Markdown 解析器,比 Python-Markdown 更快,更準確,可擴展
-
PyYAML:YAML 解析器
-
csvkit:操作 CSV 的工具
-
unp:一個用來解包歸檔文件的命令行工具
HTML/XML 解析
-
BeautifulSoup:解析 HTML 或 XML 格式數據
-
bleach:基于白名單的 HTML 清理和文本鏈接庫
-
cssutils:CSS 庫
-
html5lib:HTML 文檔和片段解析及序列化庫
-
lxml:一個用來處理 HTML 和 XML 的庫
-
MarkupSafe:XML/HTML/XHTML 標記安全字符串
-
pyquery:一個解析 HTML 的庫,類似 jQuery
-
requests-html:人性化的 HTML 解析庫
-
untangle:將 XML 文檔轉換為 Python 對象
-
xhtml2pdf:HTML/CSS 轉 PDF 工具
-
xmltodict:像處理 JSON 一樣處理 XML
-
htmlparser,官方版解析 HTML DOM 樹
文件處理
-
aiofiles:基于 asyncio 的文件異步操作庫
-
imghdr:檢測圖片類型
-
mimetypes:將文件名映射為 MIME 類型
-
path.py:更方便的路徑操作的模塊
-
pathlib:跨平臺的、面向對象的路徑操作庫
-
python-magic:文件類型檢測
-
Unipath:用面向對象的方式操作文件和目錄
-
pickle/cPickle:實現了基本的數據序列和反序列化
-
watchdog:管理文件系統事件的工具
配置文件處理
-
ConfigParser:ini 文件解析器
-
configobj:ini 文件解析器
-
profig:多格式配置轉換工具
-
config:分級配置模塊
-
python-decouple:將設置和代碼完全隔離
文檔相關
-
Sphinx:文檔生成器
-
mkdocs:Markdown 格式文檔生成器
-
pycco:簡單快速、編程風格的文檔生成器
-
pdoc:從源碼注釋中生成各種格式文檔的工具
-
readthedocs:一個基于 Sphinx/MkDocs 的在線文檔托管系統
日志管理
-
logging:提供日志功能
-
logbook:Logging 庫的替代品
-
Eliot:為復雜的和分布式系統創建日志
-
Raven:Sentry 的 Python 客戶端
-
Sentry:實時記錄和收集日志的服務器
日期和時間
-
arrow:非常好的日期時間操作類庫
-
Chronyk:用于解析手寫格式的時間和日期
-
dateutil:datetime 模塊的擴展
-
delorean:解決 Python 中有關日期處理問題的庫
-
maya:人性化的時間處理庫
-
moment:用來處理時間和日期的 Python 庫
-
pendulum:一個比 arrow 更具有明確的、可預測行為的時間操作庫
-
PyTime:用于通過字符串來操作日期/時間
-
pytz:現代以及歷史版本的世界時區定義
-
when.py:進行常用的日期和時間操作
2、圖像處理
圖像處理
-
pillow:是一個更加易用的圖片操作庫
-
hmap:圖像直方圖映射
-
imgSeek:使用視覺相似性搜索一組圖片集合工具
-
nude.py:裸體檢測
-
pyBarcode:在 Python 程序中生成條形碼
-
pygram:類似 Instagram 的圖像濾鏡
-
python-qrcode:一個二維碼生成器
-
Quads:基于四叉樹的計算機藝術
-
scikit-image:一個用于圖像處理的庫
-
thumbor:一個小型圖像服務
-
wand:MagickWand的 Python 版本
-
face_recognition:簡單易用的人臉識別庫
OCR
-
pyocr:Tesseract 和 Cuneiform 的一個封裝
-
pytesseract:Google Tesseract OCR 的另一個封裝
-
python-tesseract:Google Tesseract OCR 的一個包裝類
3、網絡相關
下載
-
s3cmd:用來管理 Amazon S3 和 CloudFront 的命令行工具
-
s4cmd:S3 命令行工具
-
you-get:YouTube/Youku/Niconico 視頻下載器
-
youtube-dl:用來下載 YouTube 視頻的工具
-
Coursera:可以從 http://coursera.org 下載視頻
-
subliminal:搜索和下載字幕的庫
HTTP
-
aiohttp:基于 asyncio 的異步 HTTP 庫
-
requests:最為流行的 HTTP 請求庫
-
grequests:requests 庫 + gevent 實現異步 HTTP 請求
-
httplib2:HTTP 客戶端庫
-
treq:類似 requests 的 HTTP 客戶端
-
urllib3:一個具有線程安全的 HTTP 庫
網絡可視化
-
Mininet:一款流行的網絡模擬器
-
POX:一個針對基于 Python 的軟件定義網絡應用
-
Pyretic:為網絡交換機和模擬器提供強大的抽象能力
-
SDX Platform:基于 SDN 的 IXP 實現
-
NRU:一個基于組件的軟件定義網絡框架
URL 處理
-
furl:更加簡單的處理 URL 庫
-
purl:一個簡單的、不可變的 URL 類
-
pyshorteners:一個純 Python URL 縮短庫
-
shorturl:生成短小 URL 的庫
網絡爬蟲
-
Scrapy:一個快速高級的網絡采集框架
-
cola:一個分布式爬蟲框架
-
Demiurge:基于 PyQuery 的爬蟲框架
-
feedparser:feed 解析器
-
Grab:站點爬取框架
-
MechanicalSoup:用于自動和網絡站點交互的庫
-
portia:Scrapy 可視化爬蟲
-
pyspider:一個強大的爬蟲工具
-
RoboBrowser:一個簡單的網站瀏覽工具
網頁內容提取
-
Haul:一個可擴展的圖像爬取工具
-
html2text:將 HTML 轉換為 Markdown 格式
-
lassie:網頁內容檢索庫
-
micawber:網頁內容提取庫,用來從 URLs 提取富內容
-
newspaper:進行新聞提取,文章提取以及內容策展
-
opengraph:用來解析開放內容協議的模塊
-
python-goose:HTML 內容/文章提取器
-
python-readability:readability 工具的 Python 接口
-
sanitize:雜亂數據調整
-
sumy:為文本文件和 HTML 頁面進行自動摘要的模塊
-
textract:從任何格式的文檔中提取文本
-
mechanize:網頁瀏覽工具
WebSocket
-
AutobahnPython:WebSocket & WAMP 工具
-
Crossbar:開源統一應用路由
-
django-socketio:給 Django 用的 WebSockets 工具
-
WebSocket-for-Python:WebSocket 客戶端和服務器庫
RPC
-
SimpleJSONRPCServer:是 JSON-RPC 規范的一個實現
-
SimpleXMLRPCServer:簡單的 XML-RPC 服務器實現
-
zeroRPC:是一個的 RPC 實現
4、Web 框架
全??蚣?/h3>
-
Django:Python 界最流行的 web 框架
-
Flask:一個微型 Web 框架
-
pyramid:一個小巧快速的開源 Web 框架
-
Bottle:一個快速小巧,輕量級的 WSGI 微型 Web 框架
-
CherryPy:一個極簡 的Web 框架
-
TurboGears:一個可以擴展為全棧解決方案的微型框架
-
web.py:一個簡單,又強大 Web 框架
-
web2py:一個全棧 Web 框架
-
Tornado:一個 Web 框架和異步網絡庫
-
sanic:異步網絡框架
-
Karrigell:簡單的 Web 框架
-
PyDBLitewebpy:一個小巧靈活的 Web 框架
-
Quixote:一個 Web 開發框架
-
Grok:基于 Zope3 的 Web 框架
-
Bluebream:開源的 Web 應用服務器
-
guava:輕量級高性能的 Web 框架
CMS
-
odoo-cms: 開源的企業級 CMS
-
django-cms:開源的企業級 CMS
-
djedi-cms:輕量級但卻非常強大的 Django CMS
-
FeinCMS:基于 Django 構建的先進的內容管理系統
-
Kotti:一個高級的 web 應用框架
-
Mezzanine:一個強大的靈活的內容管理平臺
-
Opps:一個為雜志報紙網站設計的 CMS 平臺
-
Plone:一個構建于開源應用服務器 Zope 之上的 CMS
-
Quokka:靈活可擴展的小型 CMS
-
Wagtail:一個 Django 內容管理系統
-
Widgy:最新的 CMS 框架,基于 Django
Web 權限/安全
-
Carteblanche:代碼對齊模塊,很好地處理了代碼導航及權限
-
django-guardian:單個對象權限
-
django-rules:一個小巧但是強大的應用,提供對象級別的權限管理
-
Flask-OAuthlib:Flask的OAuth工具包
-
django-oauth-toolkit:為 Django 用戶準備的 OAuth2
-
django-allauth:Django 的驗證模塊
-
Authomatic:簡單但是強大的框架,身份驗證/授權客戶端
商務框架
-
django-oscar:一個用于 Django 的電子商務框架
-
django-shop:基于 Django 的店鋪系統
-
Cartridge:基于 Mezzanine 構建的購物車應用
-
shoop:基于 Django 的電子商務平臺
-
alipay:支付寶 API
-
merchant:可以接收來自多種支付平臺支付的 Django 應用
-
money:貨幣類庫
-
python-currencies:顯示貨幣格式以及它的數值
Restful API
-
django-rest-framework:一個基于 Django 的工具,用來構建 Web API
-
django-tastypie:為 Django 應用開發 API 工具
-
django-formapi:Django 的表單驗證工具
-
flask-api:為 flask 開發的 API 工具
-
flask-restful:為 flask 快速創建 REST APIs 的工具
-
flask-restless:為 SQLAlchemy 數據庫模型而開發的 RESTful APIs
-
flask-api-utils:為 Flask 處理 API 表示和驗證
-
eve:由 Flask, MongoDB 等驅動 的 REST API 框架
-
cornice:一個 Pyramid 的 REST 框架
-
falcon:用來建立云 API 和 Web app 后端的高性能框架
-
sandman:為數據庫驅動系統自動創建 REST APIs
-
restless:框架無關的 REST 框架
-
ripozo:快速創建 REST APIs 工具
模板引擎
-
Jinja2:一個現代的友好的模板引擎
-
Chameleon:一個 HTML/XML 模板引擎
-
Genshi:用以生成 Web 感知的結果
-
Mako:超高速輕量級模板
隊列
-
celery:一個異步任務隊列/作業隊列
-
huey:小型多線程任務隊列
-
mrq:分布式 worker 任務隊列,使用 Redis 和 gevent
-
rq:簡單的作業隊列工具
-
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:用來編譯和壓縮資源
-
webassets:為靜態資源打包、優化和管理,生成獨一無二的緩存 URL
緩存
-
Beaker:緩存會話的庫
-
django-cache-machine:自動緩存和失效工具
-
django-cacheops:具有自動顆?;录寗邮Чδ艿?ORM
-
django-viewlet:渲染模板和額外的緩存控制功能
-
dogpile.cache:是 Beaker 的下一代替代品
-
HermesCache:緩存庫,具有基于標簽的失效和 dogpile effect 保護功能
-
johnny-cache:django 應用緩存框架
-
pylibmc:libmemcached 接口封裝
表單
-
Deform:HTML 表單生成庫
-
django-bootstrap3:集成了 Bootstrap3 的 Django
-
django-crispy-forms:可以以一種非常優雅且 DRY(Don’t repeat yourself) 的方式來創建美觀的表單
-
django-remote-forms:一個平臺獨立的 Django 表單序列化工具
-
WTForms:一個靈活的表單驗證和呈現庫
-
WTForms-JSON:WTForms 擴展,用來處理 JSON 數據
數據驗證
-
Cerberus:映射驗證器
-
colander:用于對從 XML, JSON,HTML 表單獲取數據并序列化數據進行驗證和反序列化的系統
-
kmatch:一種用于匹配/驗證/篩選字典的工具
-
schema:用于對 Python 數據結構進行驗證的庫
-
Schematics:用于數據結構驗證
-
valideer:輕量級數據驗證和適配庫
-
voluptuous:數據驗證庫,主要是為了驗證傳入 Python 的 JSON,YAML 等數據
電子郵件
-
django-celery-ses:帶有 AWS SES 和 Celery 的 email 后端
-
envelopes:人性化的電子郵件庫
-
flanker:一個 email 地址和 Mime 解析庫
-
imbox:IMAP 庫
-
inbox.py:SMTP 服務器
-
inbox:開源電子郵件工具箱
-
lamson:Python 風格的 SMTP 應用服務器
-
mailjet:提供批量發送郵件,統計等功能
-
marrow.mailer:高性能可擴展郵件分發框架
-
modoboa:郵件托管和管理平臺
-
pyzmail:創建、發送和解析電子郵件
-
Talon:用來抽取信息和簽名
-
django-simple-captcha:一個簡單、高度可定制的 Django 應用
-
django-simple-spam-blocker:一個用于 Django 的簡單的電子垃圾屏蔽工具
URL
-
webargs:解析 HTTP 請求參數的庫
-
short_url:短網址生成
國際化
-
Babel:一個 Python 的國際化庫
-
Korean:一個韓語詞態庫
管理面板
-
Ajenti:一個值得擁有的管理面板
-
django-suit:Django 管理界面的一個替代品
-
django-xadmin:Django admin 的一個替代品
-
flask-admin:一個用于 Flask 的簡單可擴展的管理界面框架
-
flower:一個對 Celery 集群進行實時監控和提供 Web 管理界面的工具
-
Grappelli:Django 管理界面的一個漂亮的皮膚
-
Wooey:可以為 Python 腳本創建 Web 用戶界面
靜態站點生成
-
Pelican:通過 Markdown 或 ReST 來處理內容,使用 Jinja2 來制作主題
-
Cactus:為專業設計師設計的靜態站點生成器
-
Hyde:基于 Jinja2 的靜態站點生成器
-
Nikola:靜態網站和博客生成器
-
Tinkerer:一個博客引擎/靜態站點生成器
-
Lektor:一個簡單易用的靜態 CMS 和博客引擎
-
Tags:最簡單的靜態網站生成器
WSGI 服務器
-
gunicorn:部分是由 C 語言編寫而成的 WSGI 工具
-
uwsgi:用來建立托管服務
-
bjoern:異步速度非常快
-
fapws3:異步,由 C 語言編寫
-
meinheld:異步服務器
-
netius:異步,非??焖?/p>
-
paste:多線程,穩定,久經考驗
-
rocket:多線程
-
waitress:多線程
-
Werkzeug:一個 WSGI 工具庫
ORM
-
Django Models:Django 的重要組成
-
SQLAlchemy:SQL 工具以及對象關系映射工具
-
Peewee:一個小巧的 ORM
-
PonyORM:提供面向生成器的 SQL ORM
-
python-sql:Python 風格的 SQL 查詢
-
django-mongodb-engine:Django MongoDB 后端
-
PynamoDB:Amazon DynamoDB 的后端
-
flywheel:Amazon DynamoDB 的對象映射工具
-
MongoEngine:用于 MongoDB 對象文檔映射工具
-
hot-redis:為 Redis 提供的后端
-
redisco:提供可以持續存在在 Redis 中的簡單模型和容器
-
butterdb:Google Drive 電子表格的 Python ORM
5、地理位置
-
GeoDjango:世界級地理圖形 Web 框架
-
GeoIP:MaxMind GeoIP Legacy 數據庫的 API
-
geojson:GeoJSON 的 Python 工具
-
geopy:地址編碼工具箱
-
pygeoip:純 Python GeoIP API
-
django-countries:提供用于表格的國家選擇功能,國旗圖標靜態文件以及模型中的國家字段
6、系統
進程
-
envoy:比 subprocess 模塊更人性化的模塊
-
sarge:另一 種 subprocess 模塊的封裝
-
sh: subprocess 替代庫
-
subprocess:調用 shell 命令的神器
并發/并行
-
multiprocessing:基于進程的“線程”接口
-
threading:更高層的線程接口
-
eventlet:支持 WSGI 的異步框架
-
gevent:基于協程的 Python 網絡庫
-
Tomorrow:用于產生異步代碼的庫
-
uvloop:在 libuv 之上超快速實現 asyncio 事件循環的庫
7、數據庫相關
Python 實現的數據庫
-
pickleDB:簡單輕量級鍵值儲存數據庫
-
PipelineDB:流式 SQL 數據庫
-
TinyDB:微型的面向文檔型數據庫
-
ZODB:鍵值和對象圖數據庫
數據庫驅動
-
aiomysql:基于 asyncio 的異步 MySQL 數據庫操作庫
-
mysql-python:MySQL 數據庫連接器
-
mysqlclient:mysql-python 分支
-
oursql:一個更好的 MySQL 連接器
-
PyMySQL:純 Python MySQL 驅動
-
psycopg2:最流行的 PostgreSQL 適配器
-
queries:psycopg2 庫的封裝
-
txpostgres:基于 Twisted 的異步 PostgreSQL 驅動
-
apsw:SQLite 封裝
-
dataset:在數據庫中存儲 Python 字典
-
pymssql:一個簡單的 Microsoft SQL Server 數據庫接口
-
cassandra-python-driver:Cassandra 的 Python 驅動
-
HappyBase:為 Apache HBase 設計的庫
-
Plyvel:一個快速且功能豐富的 LevelDB 的接口庫
-
py2neo:Neo4j restful 接口的封裝客戶端
-
pycassa:Cassandra 的 Python Thrift 驅動
-
PyMongo:MongoDB 的官方 Python 客戶端
-
redis-py:Redis 的 Python 客戶端
-
telephus:基于 Twisted 的 Cassandra 客戶端
-
txRedis:基于 Twisted 的 Redis 客戶端
8、安全
OAuth
-
OAuthLib:一個 OAuth 請求-簽名庫
-
python-oauth2:完全測試的抽象接口
-
python-social-auth:設置簡單的社會化驗證方式
-
rauth:OAuth 1.0/a, 2.0, 和 Ofly 的 Python 庫
-
sanction:超級簡單的 OAuth2 客戶端實現
密碼
-
cryptography:提供密碼學基本內容和方法
-
hashids:在 Python 中實現 hashids
-
Paramiko:提供 ssh 客戶端和服務端的功能
-
Passlib:安全密碼存儲/哈希庫
-
PyCrypto:密碼學工具箱
-
PyNacl:網絡和密碼學庫
其他
-
jose:JavaScript 對象簽名和加密草案的實現
-
PyJWT:JSON Web 令牌
-
python-jws:JSON Web 簽名
-
python-jwt:用來生成和驗證 JSON Web 令牌的模塊
-
Permissions:允許或拒絕用戶訪問數據或函數
9、人工智能
自然語言處理
-
NLTK:先進的用以構建處理人類語言數據的程序
-
jieba:中文分詞工具
-
langid.py:獨立的語言識別系統
-
SnowNLP:用來處理中文文本的庫
-
TextBlob:自然語言處理工具
-
TextGrocery:簡單高效的短文本分類工具
-
thulac:清華大學自然語言處理與社會人文計算實驗室研制推出的一套中文詞法分析工具包
-
loso:中文分詞函數庫
計算機視覺
-
OpenCV:開源計算機視覺庫
-
pyocr:Tesseract 和 Cuneiform 的封裝庫
-
pytesseract:Google Tesseract OCR 的封裝庫
-
SimpleCV:用來創建計算機視覺應用的開源框架
機器學習/深度學習
-
Caffe: Caffe 的 Python 接口
-
Caffe2:一個輕量級的、模塊化的,可擴展的深度學習框架
-
Crab:靈活、快速的推薦引擎
-
gensim:人性化的話題建模庫
-
hebel:深度學習庫
-
keras: 神經網絡
-
MXNet:高效靈活的深度學習框架
-
NuPIC:智能計算 Numenta 平臺
-
pattern:網絡挖掘模塊
-
PyBrain:機器學習庫
-
pydeep:深度學習庫
-
Pylearn2:基于 Theano 的機器學習庫
-
python-recsys:用來實現推薦系統的庫
-
Pytorch:具有張量和動態神經網絡深度學習框架
-
scikit-learn:基于 SciPy 構建的機器學習模塊
-
skflow:一個 TensorFlow 的簡化接口
-
TensorFlow:谷歌開源的最受歡迎的深度學習框架
-
Theano:快速數值計算庫
-
vowpalporpoise:輕量級 Vowpal Wabbit 的封裝
-
Milk:機器學習工具箱
-
PyMVPA(Multivariate Pattern Analysis in Python):為大數據集提供統計學習分析的 Python 工具包,它提供了一個靈活可擴展的框架
10、科學計算與數據分析
數據處理
-
astropy:天文學相關的庫
-
bcbio-nextgen:為全自動高通量測序分析提供符合最佳實踐的處理流程
-
bccb:生物分析
-
Biopython:是一組可以免費使用的用來進行生物計算的工具
-
blaze:NumPy 和 Pandas 的大數據接口
-
cclib:用來解析和解釋計算化學軟件包輸出結果的庫
-
NetworkX:為復雜網絡設計的高性能工具
-
Neupy:執行和測試各種不同的人工神經網絡算法
-
Numba:針對數據科學用的 Python
-
NumPy:進行科學計算的基礎包
-
Open Babel:用來描述多種化學數據
-
Open Mining:使用 Python 挖掘商業情報
-
orange:進行數據挖掘,數據可視化,分析和機器學習
-
Pandas:數據結構和數據分析工具
-
PyDy:用來為動力學運動建模工作流程提供幫助
-
PyMC:馬爾科夫鏈蒙特卡洛采樣工具
-
RDKit:化學信息學和機器學習軟件
-
SciPy:用于數學,科學和工程的開源軟件
-
statsmodels:統計建模和計量經濟學
-
SymPy:用于符號數學的庫
-
zipline:算法交易庫
-
Bayesian-belief-networks:優雅的貝葉斯信念網絡框架
-
ScientificPython:用于科學計算
-
visvis:可視化計算模塊庫
數據可視化
-
matplotlib:最流行的 Python 繪圖庫
-
bokeh:進行交互式 Web 繪圖
-
ggplot:ggplot2 的 Python 版本
-
plotly:基于 matplotlib 工作的 Web 繪圖庫
-
pyecharts:基于百度 Echarts 的數據可視化庫
-
pygal:SVG 圖表創建工具
-
pygraphviz:Graphviz 的 Python 實現
-
PyQtGraph:交互式實時圖像繪制組件
-
SnakeViz:基于瀏覽器的模塊輸出結果查看工具
-
vincent:把 Python 轉換為 Vega 語法的轉換工具
-
VisPy:基于 OpenGL 的高性能科學可視化工具
11、GUI 與游戲開發
GUI
-
curses:內建的 ncurses 封裝,用來創建終端圖形用戶界面
-
enaml:創建美觀的用戶界面
-
kivy:用來創建用戶交互應用程序的庫
-
pyglet:跨平臺窗口及多媒體庫
-
PyQt:跨平臺用戶界面框架
-
PySide:跨平臺用戶界面框架 Qt
-
Tkinter:GUI 標準庫
-
Toga:操作系統原生的 GUI 工具包
-
urwid:用來創建終端 GUI 應用的庫
-
wxPython:是 wxWidgets C++ 類庫和 Python 語言混合的產物
-
PyGObject:GLib/GObject/GIO/GTK+ (GTK+3) 的 Python 實現
-
Flexx:創建 GUI 程序的工具集,它使用 web 技術進行界面的展示
-
PyGtk:GUI 程序開發庫
-
turtle:Python 的畫圖工具
游戲開發
-
Cocos2d:用來開發 2D 游戲的工具
-
Panda3D:3D 游戲引擎
-
Pygame:最為流行的編寫游戲的模塊
-
PyOgre:用來開發游戲和仿真程序
-
PyOpenGL:OpenGL 的 Python 綁定及其相關 APIs
-
PySDL2:SDL2 庫的封裝
-
RenPy:一個視覺小說引擎
-
PySFML:視覺小說引擎
12、音視頻
音頻
-
audiolazy:數字信號處理包
-
audioread:交叉庫音頻解碼
-
beets:音樂庫管理工具
-
dejavu:音頻指紋提取和識別
-
django-elastic-transcoder:Django + Amazon Elastic Transcoder
-
eyeD3:用來操作音頻文件的工具
-
id3reader:用來讀取 MP3 元數據
-
m3u8:用來解析 m3u8 文件的模塊
-
mutagen:用來處理音頻元數據
-
pydub:操作音頻文件
-
pyechonest:Echo Nest API 的 Python 客戶端
-
talkbox:用來處理演講/信號
-
TimeSide:開源的 Web 音頻處理框架
-
tinytag:用來讀取 MP3, OGG, FLAC 以及 Wave 文件音樂元數據的庫
-
mingus:高級音樂理論和曲譜包
視頻
-
moviepy:用來進行基于腳本的視頻編輯模塊
-
scikit-video:SciPy 視頻處理常用程序
-
shorten.tv:視頻摘要
13、測試相關
測試框架
-
unittest:單元測試框架
-
nose:擴展了 unittest 的功能
-
contexts:BDD 框架
-
hypothesis:基于先進的 Quickcheck 風格特性的測試庫
-
mamba:Python 的終極測試工具
-
PyAutoGUI:PyAutoGUI 是一個人性化的跨平臺 GUI 自動測試模塊
-
pyshould:基于 PyHamcrest 的測試模塊
-
pytest:成熟的全功能測試工具
-
green:干凈多彩的測試工具
-
pyvows:BDD 風格的測試工具
-
Robot Framework:通用的自動化測試框架
Web 測試
-
Selenium:Selenium WebDriver 的 Python 實現
-
locust:可擴展的用戶壓力測試工具
-
sixpack:和語言無關的 A/B 測試框架
-
splinter:開源的 Web 應用測試工具
Mock 測試
-
mock:用于偽造測試數據的庫
-
doublex:功能強大的 doubles 測試框架
-
freezegun:日期偽造模塊
-
httmock:偽造請求的庫
-
httpretty:HTTP 請求 mock 工具
-
responses:偽造 requests 請求的庫
-
VCR.py:在測試中記錄和重放 HTTP 交互
對象工廠
-
factoryboy:測試固件替代庫
-
mixer:另外一個測試固件替代庫
-
modelmommy:為 Django 測試創建隨機固件
代碼覆蓋率
-
coverage:代碼覆蓋率測量
-
Codecov:代碼覆蓋率測試工具
偽數據
-
faker:用來生成偽數據
-
fake2db:偽數據庫生成器
-
radar:生成隨機的日期/時間
-
FuckIt.py:使用最先進的技術來保證 Python 代碼無論對錯都能繼續運行
14、代碼工具
代碼分析
-
coala:語言獨立和易于擴展的代碼分析應用程序
-
code2flow:把 Python 和 JavaScript 代碼轉換為流程圖
-
pycallgraph:可以把 Python 應用的流程(調用圖)進行可視化
-
pysonar2:類型推斷和檢索工具
Lint 工具
-
Flake8:模塊化源碼檢查工具
-
Pylint:完全可定制的源碼分析器
-
YAPF: Google 的 Python 代碼格式化工具
-
pylama:Python 和 JavaScript 的代碼審查工具
代碼格式化
-
autopep8:自動格式化 Python 代碼,以使其符合 PEP8 規范
-
black:一個堅定的 Python 代碼格式化工具
調試器
-
ipdb:在 IPython 中啟用的 pdb
-
pudb:基于控制臺的 Python 調試器
-
pyringe:可以在進程中附加和注入代碼的調試器
-
wdb:通過 WebSockets 工作的 Web 調試器
-
winpdb:具有圖形用戶界面的 Python 調試器
-
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 客戶端
日志
-
logging:為 Python 提供日志功能
-
logbook:Logging 庫的替代品
-
Eliot:為復雜的和分布式系統創建日志
-
Raven:Sentry 的 Python 實現
-
Sentry:實時記錄和收集日志的服務器
持續集成
-
Travis CI:一個流行的持續集成工具
-
CircleCI:一個持續集成工具
-
Vexor CI:為私人 app 提供持續集成的工具
-
Wercker:基于 Docker 平臺,用來構建和部署微服務
代碼質量
-
Codacy:自動化代碼審查
-
QuantifiedCode:一個數據驅動、自動、持續的代碼審查工具
15、DevOps
-
Ansible:非常簡單的 IT 自動化平臺
-
SaltStack:基礎設施自動化和管理系統
-
OpenStack:用于構建私有和公有云的開源軟件
-
Docker Compose:基于 Docker 的快速分離開發環境
-
Fabric:簡單的進行遠程執行和部署的工具
-
cuisine:為 Fabric 提供一系列高級函數
-
Fabtools:用來編寫 Fabric 文件的工具
-
gitapi:Git 的純 Python API
-
hgapi:Mercurial 的純 Python API
-
honcho:用來管理基于 Procfile 的應用
-
pexpect:在一個偽終端中控制交互程序
-
psutil:跨平臺進程和系統工具模塊
-
supervisor:UNIX 的進程控制系統
16、任務調度
-
APScheduler:輕巧但強大的進程內任務調度工具
-
django-schedule:一個 Django 排程應用
-
doit:任務執行和構建工具
-
gunnery:分布式系統使用的多用途任務執行工具
-
Joblib:提供輕量級作業流水線的工具
-
Plan:更好的編寫 crontab 文件的工具
-
schedule:人性化的 Python 任務調度庫
-
Spiff:使用純 Python 實現的工作流引擎
-
TaskFlow:可以方便執行任務的庫
-
AirFlow:是一個工作流分配管理系統
17、高性能
-
Cython:優化的 Python 靜態編譯器
-
PeachPy:嵌入 Python 的 x86-64 匯編器
-
PyPy:使用 Python 實現的 Python 解釋器
-
Pyston:使用 LLVM 和現代 JIT 技術構建的 Python 實現
-
Stackless Python:一個強化版的 Python
18、Windows 環境
-
Python(x,y):面向科學應用的 Python 發行版
-
pythonlibs:非官方的 Windows 平臺 Python 擴展二進制包
-
PythonNet:Python 與 .NET 公共語言運行庫的集成環境
-
PyWin32:針對 Windows 的 Python 擴展
-
WinPython:Windows 7/8 系統下便攜式開發環境
19、硬件相關
-
ino:操作 Arduino 的命令行工具
-
Pyro:Python 機器人編程庫
-
PyUserInput:跨平臺的控制鼠標和鍵盤的模塊
-
scapy:操作數據包的庫
-
wifi:用來在 Linux 平臺上操作 WiFi
-
Pingo:為類似 Raspberry Pi,pcDuino, Intel Galileo 等設備提供統一的 API
20、環境與包管理
環境管理
-
p:非常簡單的交互式 Python 版本管理工具
-
pyenv:簡單的 Python 版本管理工具
-
Vex:可以在虛擬環境中執行命令的工具
-
virtualenv:創建獨立 Python 環境的工具
-
virtualenvwrapper:virtualenv 的一組擴展
-
pew:一套管理多個虛擬環境的工具
-
PyRun:無需安裝的Python版本管理工具
包管理
-
pip:包和依賴關系管理工具
-
pip-tools:保證 Python 包依賴關系更新的一組工具
-
pipenv:官方推薦的新一代包管理工具
-
conda:跨平臺的二進制包管理工具
-
Curdling:管理 Python 包的命令行工具
-
wheel:Python 分發的新標準
-
Pdm:新一代包管理工具
-
easy_install:軟件包管理系統
包倉庫
-
warehouse:下一代 PyPI
-
bandersnatch:PyPA 提供的 PyPI 鏡像工具
-
devpi:PyPI 服務和打包/測試/分發工具
-
localshop:本地 PyPI 服務
-
PyPI:新一代的 Python 包庫管理工具
21、分發與構建
軟件分發
-
PyInstaller:將 Python 程序轉換成獨立的執行文件
-
dh-virtualenv:構建并將 virtualenv 虛擬環境作為一個 Debian 包來發布
-
Nuitka:將腳本、模塊、包編譯成可執行文件或擴展模塊
-
py2app:將 Python 腳本變為獨立軟件包
-
py2exe:將 Python 腳本變為獨立軟件包
-
pynsist:用來創建 Windows 安裝程序的工具
-
cx-Freeze:跨平臺的用于打包成可執行文件的庫
構建
-
buildout:一個構建系統
-
BitBake:針對嵌入式 Linux 的構建工具
-
fabricate:自動找到依賴關系的構建工具
-
PlatformIO:多平臺命令行構建工具
-
PyBuilder:純 Python 實現的持續化構建工具
-
SCons:軟件構建工具
交互式解釋器
-
IPython:功能豐富的工具
-
bpython:界面豐富的 Python 解析器
-
ptpython:高級交互式 Python 解析器
22、命令行相關
命令行工具
-
asciimatics:跨平臺、全屏終端庫
-
cement:Python 的命令行程序框架
-
click:通過組合的方式來創建精美命令行界面的包
-
cliff:用于創建命令行程序的框架
-
clint:Python 命令行程序工具
-
colorama:跨平臺彩色終端文本
-
docopt:Python 風格的命令行參數解析器
-
Gooey:將命令行程序變成一個 GUI 程序
-
python-prompt-toolkit:用于構建強大的交互式命令行程序的庫
-
python-fire:Google 出品的一個構建命令行界面的庫
-
Pythonpy:在命令行中直接執行任何 Python 指令
-
Clime:可以轉換任何模塊為多的 CLI 命令程序
-
docopt:Python 命令行參數分析器
-
pycli:命令行應用程序
-
rainbowstream:推特客戶終端
-
argparse:寫命令行腳本工具
-
pyHook:基于 Python 的“鉤子”庫
-
pstuil:跨平臺地方便獲取和控制系統的進程庫
命令行高級工具
-
aws-cli:Amazon Web Services 的通用命令行界面
-
bashplotlib:在終端中進行繪圖
-
caniusepython3:判斷是哪個項目妨礙完美移植代碼到 Python3
-
cookiecutter:從 cookiecutters 創建項目的一個命令行工具
-
doitlive:用來在終端中進行現場演示的工具
-
pyftpdlib:速度極快和可擴展的 Python FTP 服務庫
-
howdoi:通過命令行獲取即時的編程問題解答
-
httpie:命令行 HTTP 客戶端
-
PathPicker:從 bash 輸出中選出文件
-
percol:向 UNIX shell 傳統管道概念中加入交互式選擇功能
-
SAWS:一個加強版的 AWS 命令行
-
thefuck:修正之前的命令行指令
-
mycli:MySQL 命令行客戶端
-
pgcli:Postgres 命令行工具
-
try:簡單的命令行工具,用來試用 python 庫
23、第三方
API
-
apache-libcloud:為各種云設計的 Python 庫
-
boto:Amazon Web Services 的 Python 接口
-
django-wordpress:WordPress 與 Django 的結合
-
facebook-sdk:Facebook 平臺的 Python SDK
-
facepy:Facebook’s Graph API
-
gmail:Gmail 的 Python 接口
-
google-api-python-client:Python 用的 Google APIs 客戶端庫
-
gspread:Google 電子表格的 Python API
-
twython:Twitter API 的封裝
外來函數接口
-
cffi:用來調用 C 代碼的外來函數接口
-
ctypes:另一個用來調用 C 代碼的外來函數接口
-
PyCUDA:Nvidia CUDA API 的封裝
-
SWIG:簡化的封裝和接口生成器
24、其他
MapReduce
-
dpark:Spark 的 Python 版
-
dumbo:可以讓人輕松的編寫和運行 Hadoop 程序
-
luigi:構建批處理作業的復雜流水線
-
mrjob:在 Hadoop 或 Amazon Web Services 上運行 MapReduce 任務
-
PySpark:Spark 的 Python API
-
streamparse:運行針對事實數據流的 Python 代碼
函數式編程
-
CyToolz:Toolz 的 Cython 實現
-
fn.py:在 Python 中進行函數式編程
-
funcy:炫酷又實用的函數式工具
-
Toolz:一組用于迭代器,函數和字典的函數式編程工具
兼容性
-
Python-Future:Python 2 和 Python 3 之間丟失的那個兼容性層
-
Python-Modernize:使 Python 代碼更加現代化以便最終遷移到 Python 3
-
Six:Python 2 和 3 的兼容性工具
編輯器插件
-
Elpy:Emacs Python 開發環境
-
SublimeJEDI:一個 Sublime Text 插件,用來使用自動補全庫 Jedi
-
Anaconda:Anaconda 把 Sublime Text 3 變成一個功能齊全的 Python IDE
-
YouCompleteMe:引入基于 Jedi 的 Python 自動補全引擎
-
Jedi-vim:綁定 Vim 和 Jedi 自動補全庫
-
Python-mode:將 Vim 變成 Python IDE
-
PTVS:Visual Studio 的 Python 工具
自動聊天工具
- Errbot:簡單且流行的聊天機器人工具
金融數據
-
Tushare:可以提供免費股票、基金、期貨、港股等金融數據的開源工具
-
Ta-Lib:金融數據技術分析庫
-
AkSHare:一個非常棒的免費金融數據平臺
算法和設計模式
-
algorithms:一個 Python 算法模塊
-
python-patterns:Python 設計模式的集合
-
sortedcontainers:SortedList,SortedDict 和 SortedSet 類型
雜七雜八
-
blinker:一個快速的 Python 進程內信號/事件分發系統
-
itsdangerous:一系列輔助工具,用來將可信的數據傳入不可信的環境
-
pluginbase:一個簡單但是靈活的 Python 插件系統
-
Pychievements:一個用來創建和追蹤成就的 Python 框架
-
Tryton:一個通用商務框架
總結
Django:Python 界最流行的 web 框架
Flask:一個微型 Web 框架
pyramid:一個小巧快速的開源 Web 框架
Bottle:一個快速小巧,輕量級的 WSGI 微型 Web 框架
CherryPy:一個極簡 的Web 框架
TurboGears:一個可以擴展為全棧解決方案的微型框架
web.py:一個簡單,又強大 Web 框架
web2py:一個全棧 Web 框架
Tornado:一個 Web 框架和異步網絡庫
sanic:異步網絡框架
Karrigell:簡單的 Web 框架
PyDBLitewebpy:一個小巧靈活的 Web 框架
Quixote:一個 Web 開發框架
Grok:基于 Zope3 的 Web 框架
Bluebream:開源的 Web 應用服務器
guava:輕量級高性能的 Web 框架
odoo-cms: 開源的企業級 CMS
django-cms:開源的企業級 CMS
djedi-cms:輕量級但卻非常強大的 Django CMS
FeinCMS:基于 Django 構建的先進的內容管理系統
Kotti:一個高級的 web 應用框架
Mezzanine:一個強大的靈活的內容管理平臺
Opps:一個為雜志報紙網站設計的 CMS 平臺
Plone:一個構建于開源應用服務器 Zope 之上的 CMS
Quokka:靈活可擴展的小型 CMS
Wagtail:一個 Django 內容管理系統
Widgy:最新的 CMS 框架,基于 Django
Carteblanche:代碼對齊模塊,很好地處理了代碼導航及權限
django-guardian:單個對象權限
django-rules:一個小巧但是強大的應用,提供對象級別的權限管理
Flask-OAuthlib:Flask的OAuth工具包
django-oauth-toolkit:為 Django 用戶準備的 OAuth2
django-allauth:Django 的驗證模塊
Authomatic:簡單但是強大的框架,身份驗證/授權客戶端
django-oscar:一個用于 Django 的電子商務框架
django-shop:基于 Django 的店鋪系統
Cartridge:基于 Mezzanine 構建的購物車應用
shoop:基于 Django 的電子商務平臺
alipay:支付寶 API
merchant:可以接收來自多種支付平臺支付的 Django 應用
money:貨幣類庫
python-currencies:顯示貨幣格式以及它的數值
django-rest-framework:一個基于 Django 的工具,用來構建 Web API
django-tastypie:為 Django 應用開發 API 工具
django-formapi:Django 的表單驗證工具
flask-api:為 flask 開發的 API 工具
flask-restful:為 flask 快速創建 REST APIs 的工具
flask-restless:為 SQLAlchemy 數據庫模型而開發的 RESTful APIs
flask-api-utils:為 Flask 處理 API 表示和驗證
eve:由 Flask, MongoDB 等驅動 的 REST API 框架
cornice:一個 Pyramid 的 REST 框架
falcon:用來建立云 API 和 Web app 后端的高性能框架
sandman:為數據庫驅動系統自動創建 REST APIs
restless:框架無關的 REST 框架
ripozo:快速創建 REST APIs 工具
Jinja2:一個現代的友好的模板引擎
Chameleon:一個 HTML/XML 模板引擎
Genshi:用以生成 Web 感知的結果
Mako:超高速輕量級模板
celery:一個異步任務隊列/作業隊列
huey:小型多線程任務隊列
mrq:分布式 worker 任務隊列,使用 Redis 和 gevent
rq:簡單的作業隊列工具
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:用來編譯和壓縮資源
webassets:為靜態資源打包、優化和管理,生成獨一無二的緩存 URL
Beaker:緩存會話的庫
django-cache-machine:自動緩存和失效工具
django-cacheops:具有自動顆?;录寗邮Чδ艿?ORM
django-viewlet:渲染模板和額外的緩存控制功能
dogpile.cache:是 Beaker 的下一代替代品
HermesCache:緩存庫,具有基于標簽的失效和 dogpile effect 保護功能
johnny-cache:django 應用緩存框架
pylibmc:libmemcached 接口封裝
Deform:HTML 表單生成庫
django-bootstrap3:集成了 Bootstrap3 的 Django
django-crispy-forms:可以以一種非常優雅且 DRY(Don’t repeat yourself) 的方式來創建美觀的表單
django-remote-forms:一個平臺獨立的 Django 表單序列化工具
WTForms:一個靈活的表單驗證和呈現庫
WTForms-JSON:WTForms 擴展,用來處理 JSON 數據
Cerberus:映射驗證器
colander:用于對從 XML, JSON,HTML 表單獲取數據并序列化數據進行驗證和反序列化的系統
kmatch:一種用于匹配/驗證/篩選字典的工具
schema:用于對 Python 數據結構進行驗證的庫
Schematics:用于數據結構驗證
valideer:輕量級數據驗證和適配庫
voluptuous:數據驗證庫,主要是為了驗證傳入 Python 的 JSON,YAML 等數據
django-celery-ses:帶有 AWS SES 和 Celery 的 email 后端
envelopes:人性化的電子郵件庫
flanker:一個 email 地址和 Mime 解析庫
imbox:IMAP 庫
inbox.py:SMTP 服務器
inbox:開源電子郵件工具箱
lamson:Python 風格的 SMTP 應用服務器
mailjet:提供批量發送郵件,統計等功能
marrow.mailer:高性能可擴展郵件分發框架
modoboa:郵件托管和管理平臺
pyzmail:創建、發送和解析電子郵件
Talon:用來抽取信息和簽名
django-simple-captcha:一個簡單、高度可定制的 Django 應用
django-simple-spam-blocker:一個用于 Django 的簡單的電子垃圾屏蔽工具
webargs:解析 HTTP 請求參數的庫
short_url:短網址生成
Babel:一個 Python 的國際化庫
Korean:一個韓語詞態庫
Ajenti:一個值得擁有的管理面板
django-suit:Django 管理界面的一個替代品
django-xadmin:Django admin 的一個替代品
flask-admin:一個用于 Flask 的簡單可擴展的管理界面框架
flower:一個對 Celery 集群進行實時監控和提供 Web 管理界面的工具
Grappelli:Django 管理界面的一個漂亮的皮膚
Wooey:可以為 Python 腳本創建 Web 用戶界面
Pelican:通過 Markdown 或 ReST 來處理內容,使用 Jinja2 來制作主題
Cactus:為專業設計師設計的靜態站點生成器
Hyde:基于 Jinja2 的靜態站點生成器
Nikola:靜態網站和博客生成器
Tinkerer:一個博客引擎/靜態站點生成器
Lektor:一個簡單易用的靜態 CMS 和博客引擎
Tags:最簡單的靜態網站生成器
gunicorn:部分是由 C 語言編寫而成的 WSGI 工具
uwsgi:用來建立托管服務
bjoern:異步速度非常快
fapws3:異步,由 C 語言編寫
meinheld:異步服務器
netius:異步,非??焖?/p>
paste:多線程,穩定,久經考驗
rocket:多線程
waitress:多線程
Werkzeug:一個 WSGI 工具庫
Django Models:Django 的重要組成
SQLAlchemy:SQL 工具以及對象關系映射工具
Peewee:一個小巧的 ORM
PonyORM:提供面向生成器的 SQL ORM
python-sql:Python 風格的 SQL 查詢
django-mongodb-engine:Django MongoDB 后端
PynamoDB:Amazon DynamoDB 的后端
flywheel:Amazon DynamoDB 的對象映射工具
MongoEngine:用于 MongoDB 對象文檔映射工具
hot-redis:為 Redis 提供的后端
redisco:提供可以持續存在在 Redis 中的簡單模型和容器
butterdb:Google Drive 電子表格的 Python ORM
GeoDjango:世界級地理圖形 Web 框架
GeoIP:MaxMind GeoIP Legacy 數據庫的 API
geojson:GeoJSON 的 Python 工具
geopy:地址編碼工具箱
pygeoip:純 Python GeoIP API
django-countries:提供用于表格的國家選擇功能,國旗圖標靜態文件以及模型中的國家字段
envoy:比 subprocess 模塊更人性化的模塊
sarge:另一 種 subprocess 模塊的封裝
sh: subprocess 替代庫
subprocess:調用 shell 命令的神器
multiprocessing:基于進程的“線程”接口
threading:更高層的線程接口
eventlet:支持 WSGI 的異步框架
gevent:基于協程的 Python 網絡庫
Tomorrow:用于產生異步代碼的庫
uvloop:在 libuv 之上超快速實現 asyncio 事件循環的庫
pickleDB:簡單輕量級鍵值儲存數據庫
PipelineDB:流式 SQL 數據庫
TinyDB:微型的面向文檔型數據庫
ZODB:鍵值和對象圖數據庫
aiomysql:基于 asyncio 的異步 MySQL 數據庫操作庫
mysql-python:MySQL 數據庫連接器
mysqlclient:mysql-python 分支
oursql:一個更好的 MySQL 連接器
PyMySQL:純 Python MySQL 驅動
psycopg2:最流行的 PostgreSQL 適配器
queries:psycopg2 庫的封裝
txpostgres:基于 Twisted 的異步 PostgreSQL 驅動
apsw:SQLite 封裝
dataset:在數據庫中存儲 Python 字典
pymssql:一個簡單的 Microsoft SQL Server 數據庫接口
cassandra-python-driver:Cassandra 的 Python 驅動
HappyBase:為 Apache HBase 設計的庫
Plyvel:一個快速且功能豐富的 LevelDB 的接口庫
py2neo:Neo4j restful 接口的封裝客戶端
pycassa:Cassandra 的 Python Thrift 驅動
PyMongo:MongoDB 的官方 Python 客戶端
redis-py:Redis 的 Python 客戶端
telephus:基于 Twisted 的 Cassandra 客戶端
txRedis:基于 Twisted 的 Redis 客戶端
OAuthLib:一個 OAuth 請求-簽名庫
python-oauth2:完全測試的抽象接口
python-social-auth:設置簡單的社會化驗證方式
rauth:OAuth 1.0/a, 2.0, 和 Ofly 的 Python 庫
sanction:超級簡單的 OAuth2 客戶端實現
cryptography:提供密碼學基本內容和方法
hashids:在 Python 中實現 hashids
Paramiko:提供 ssh 客戶端和服務端的功能
Passlib:安全密碼存儲/哈希庫
PyCrypto:密碼學工具箱
PyNacl:網絡和密碼學庫
jose:JavaScript 對象簽名和加密草案的實現
PyJWT:JSON Web 令牌
python-jws:JSON Web 簽名
python-jwt:用來生成和驗證 JSON Web 令牌的模塊
Permissions:允許或拒絕用戶訪問數據或函數
NLTK:先進的用以構建處理人類語言數據的程序
jieba:中文分詞工具
langid.py:獨立的語言識別系統
SnowNLP:用來處理中文文本的庫
TextBlob:自然語言處理工具
TextGrocery:簡單高效的短文本分類工具
thulac:清華大學自然語言處理與社會人文計算實驗室研制推出的一套中文詞法分析工具包
loso:中文分詞函數庫
OpenCV:開源計算機視覺庫
pyocr:Tesseract 和 Cuneiform 的封裝庫
pytesseract:Google Tesseract OCR 的封裝庫
SimpleCV:用來創建計算機視覺應用的開源框架
Caffe: Caffe 的 Python 接口
Caffe2:一個輕量級的、模塊化的,可擴展的深度學習框架
Crab:靈活、快速的推薦引擎
gensim:人性化的話題建模庫
hebel:深度學習庫
keras: 神經網絡
MXNet:高效靈活的深度學習框架
NuPIC:智能計算 Numenta 平臺
pattern:網絡挖掘模塊
PyBrain:機器學習庫
pydeep:深度學習庫
Pylearn2:基于 Theano 的機器學習庫
python-recsys:用來實現推薦系統的庫
Pytorch:具有張量和動態神經網絡深度學習框架
scikit-learn:基于 SciPy 構建的機器學習模塊
skflow:一個 TensorFlow 的簡化接口
TensorFlow:谷歌開源的最受歡迎的深度學習框架
Theano:快速數值計算庫
vowpalporpoise:輕量級 Vowpal Wabbit 的封裝
Milk:機器學習工具箱
PyMVPA(Multivariate Pattern Analysis in Python):為大數據集提供統計學習分析的 Python 工具包,它提供了一個靈活可擴展的框架
astropy:天文學相關的庫
bcbio-nextgen:為全自動高通量測序分析提供符合最佳實踐的處理流程
bccb:生物分析
Biopython:是一組可以免費使用的用來進行生物計算的工具
blaze:NumPy 和 Pandas 的大數據接口
cclib:用來解析和解釋計算化學軟件包輸出結果的庫
NetworkX:為復雜網絡設計的高性能工具
Neupy:執行和測試各種不同的人工神經網絡算法
Numba:針對數據科學用的 Python
NumPy:進行科學計算的基礎包
Open Babel:用來描述多種化學數據
Open Mining:使用 Python 挖掘商業情報
orange:進行數據挖掘,數據可視化,分析和機器學習
Pandas:數據結構和數據分析工具
PyDy:用來為動力學運動建模工作流程提供幫助
PyMC:馬爾科夫鏈蒙特卡洛采樣工具
RDKit:化學信息學和機器學習軟件
SciPy:用于數學,科學和工程的開源軟件
statsmodels:統計建模和計量經濟學
SymPy:用于符號數學的庫
zipline:算法交易庫
Bayesian-belief-networks:優雅的貝葉斯信念網絡框架
ScientificPython:用于科學計算
visvis:可視化計算模塊庫
matplotlib:最流行的 Python 繪圖庫
bokeh:進行交互式 Web 繪圖
ggplot:ggplot2 的 Python 版本
plotly:基于 matplotlib 工作的 Web 繪圖庫
pyecharts:基于百度 Echarts 的數據可視化庫
pygal:SVG 圖表創建工具
pygraphviz:Graphviz 的 Python 實現
PyQtGraph:交互式實時圖像繪制組件
SnakeViz:基于瀏覽器的模塊輸出結果查看工具
vincent:把 Python 轉換為 Vega 語法的轉換工具
VisPy:基于 OpenGL 的高性能科學可視化工具
curses:內建的 ncurses 封裝,用來創建終端圖形用戶界面
enaml:創建美觀的用戶界面
kivy:用來創建用戶交互應用程序的庫
pyglet:跨平臺窗口及多媒體庫
PyQt:跨平臺用戶界面框架
PySide:跨平臺用戶界面框架 Qt
Tkinter:GUI 標準庫
Toga:操作系統原生的 GUI 工具包
urwid:用來創建終端 GUI 應用的庫
wxPython:是 wxWidgets C++ 類庫和 Python 語言混合的產物
PyGObject:GLib/GObject/GIO/GTK+ (GTK+3) 的 Python 實現
Flexx:創建 GUI 程序的工具集,它使用 web 技術進行界面的展示
PyGtk:GUI 程序開發庫
turtle:Python 的畫圖工具
Cocos2d:用來開發 2D 游戲的工具
Panda3D:3D 游戲引擎
Pygame:最為流行的編寫游戲的模塊
PyOgre:用來開發游戲和仿真程序
PyOpenGL:OpenGL 的 Python 綁定及其相關 APIs
PySDL2:SDL2 庫的封裝
RenPy:一個視覺小說引擎
PySFML:視覺小說引擎
audiolazy:數字信號處理包
audioread:交叉庫音頻解碼
beets:音樂庫管理工具
dejavu:音頻指紋提取和識別
django-elastic-transcoder:Django + Amazon Elastic Transcoder
eyeD3:用來操作音頻文件的工具
id3reader:用來讀取 MP3 元數據
m3u8:用來解析 m3u8 文件的模塊
mutagen:用來處理音頻元數據
pydub:操作音頻文件
pyechonest:Echo Nest API 的 Python 客戶端
talkbox:用來處理演講/信號
TimeSide:開源的 Web 音頻處理框架
tinytag:用來讀取 MP3, OGG, FLAC 以及 Wave 文件音樂元數據的庫
mingus:高級音樂理論和曲譜包
moviepy:用來進行基于腳本的視頻編輯模塊
scikit-video:SciPy 視頻處理常用程序
shorten.tv:視頻摘要
unittest:單元測試框架
nose:擴展了 unittest 的功能
contexts:BDD 框架
hypothesis:基于先進的 Quickcheck 風格特性的測試庫
mamba:Python 的終極測試工具
PyAutoGUI:PyAutoGUI 是一個人性化的跨平臺 GUI 自動測試模塊
pyshould:基于 PyHamcrest 的測試模塊
pytest:成熟的全功能測試工具
green:干凈多彩的測試工具
pyvows:BDD 風格的測試工具
Robot Framework:通用的自動化測試框架
Selenium:Selenium WebDriver 的 Python 實現
locust:可擴展的用戶壓力測試工具
sixpack:和語言無關的 A/B 測試框架
splinter:開源的 Web 應用測試工具
mock:用于偽造測試數據的庫
doublex:功能強大的 doubles 測試框架
freezegun:日期偽造模塊
httmock:偽造請求的庫
httpretty:HTTP 請求 mock 工具
responses:偽造 requests 請求的庫
VCR.py:在測試中記錄和重放 HTTP 交互
factoryboy:測試固件替代庫
mixer:另外一個測試固件替代庫
modelmommy:為 Django 測試創建隨機固件
coverage:代碼覆蓋率測量
Codecov:代碼覆蓋率測試工具
faker:用來生成偽數據
fake2db:偽數據庫生成器
radar:生成隨機的日期/時間
FuckIt.py:使用最先進的技術來保證 Python 代碼無論對錯都能繼續運行
coala:語言獨立和易于擴展的代碼分析應用程序
code2flow:把 Python 和 JavaScript 代碼轉換為流程圖
pycallgraph:可以把 Python 應用的流程(調用圖)進行可視化
pysonar2:類型推斷和檢索工具
Flake8:模塊化源碼檢查工具
Pylint:完全可定制的源碼分析器
YAPF: Google 的 Python 代碼格式化工具
pylama:Python 和 JavaScript 的代碼審查工具
autopep8:自動格式化 Python 代碼,以使其符合 PEP8 規范
black:一個堅定的 Python 代碼格式化工具
ipdb:在 IPython 中啟用的 pdb
pudb:基于控制臺的 Python 調試器
pyringe:可以在進程中附加和注入代碼的調試器
wdb:通過 WebSockets 工作的 Web 調試器
winpdb:具有圖形用戶界面的 Python 調試器
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 客戶端
logging:為 Python 提供日志功能
logbook:Logging 庫的替代品
Eliot:為復雜的和分布式系統創建日志
Raven:Sentry 的 Python 實現
Sentry:實時記錄和收集日志的服務器
Travis CI:一個流行的持續集成工具
CircleCI:一個持續集成工具
Vexor CI:為私人 app 提供持續集成的工具
Wercker:基于 Docker 平臺,用來構建和部署微服務
Codacy:自動化代碼審查
QuantifiedCode:一個數據驅動、自動、持續的代碼審查工具
Ansible:非常簡單的 IT 自動化平臺
SaltStack:基礎設施自動化和管理系統
OpenStack:用于構建私有和公有云的開源軟件
Docker Compose:基于 Docker 的快速分離開發環境
Fabric:簡單的進行遠程執行和部署的工具
cuisine:為 Fabric 提供一系列高級函數
Fabtools:用來編寫 Fabric 文件的工具
gitapi:Git 的純 Python API
hgapi:Mercurial 的純 Python API
honcho:用來管理基于 Procfile 的應用
pexpect:在一個偽終端中控制交互程序
psutil:跨平臺進程和系統工具模塊
supervisor:UNIX 的進程控制系統
APScheduler:輕巧但強大的進程內任務調度工具
django-schedule:一個 Django 排程應用
doit:任務執行和構建工具
gunnery:分布式系統使用的多用途任務執行工具
Joblib:提供輕量級作業流水線的工具
Plan:更好的編寫 crontab 文件的工具
schedule:人性化的 Python 任務調度庫
Spiff:使用純 Python 實現的工作流引擎
TaskFlow:可以方便執行任務的庫
AirFlow:是一個工作流分配管理系統
Cython:優化的 Python 靜態編譯器
PeachPy:嵌入 Python 的 x86-64 匯編器
PyPy:使用 Python 實現的 Python 解釋器
Pyston:使用 LLVM 和現代 JIT 技術構建的 Python 實現
Stackless Python:一個強化版的 Python
Python(x,y):面向科學應用的 Python 發行版
pythonlibs:非官方的 Windows 平臺 Python 擴展二進制包
PythonNet:Python 與 .NET 公共語言運行庫的集成環境
PyWin32:針對 Windows 的 Python 擴展
WinPython:Windows 7/8 系統下便攜式開發環境
ino:操作 Arduino 的命令行工具
Pyro:Python 機器人編程庫
PyUserInput:跨平臺的控制鼠標和鍵盤的模塊
scapy:操作數據包的庫
wifi:用來在 Linux 平臺上操作 WiFi
Pingo:為類似 Raspberry Pi,pcDuino, Intel Galileo 等設備提供統一的 API
p:非常簡單的交互式 Python 版本管理工具
pyenv:簡單的 Python 版本管理工具
Vex:可以在虛擬環境中執行命令的工具
virtualenv:創建獨立 Python 環境的工具
virtualenvwrapper:virtualenv 的一組擴展
pew:一套管理多個虛擬環境的工具
PyRun:無需安裝的Python版本管理工具
pip:包和依賴關系管理工具
pip-tools:保證 Python 包依賴關系更新的一組工具
pipenv:官方推薦的新一代包管理工具
conda:跨平臺的二進制包管理工具
Curdling:管理 Python 包的命令行工具
wheel:Python 分發的新標準
Pdm:新一代包管理工具
easy_install:軟件包管理系統
warehouse:下一代 PyPI
bandersnatch:PyPA 提供的 PyPI 鏡像工具
devpi:PyPI 服務和打包/測試/分發工具
localshop:本地 PyPI 服務
PyPI:新一代的 Python 包庫管理工具
PyInstaller:將 Python 程序轉換成獨立的執行文件
dh-virtualenv:構建并將 virtualenv 虛擬環境作為一個 Debian 包來發布
Nuitka:將腳本、模塊、包編譯成可執行文件或擴展模塊
py2app:將 Python 腳本變為獨立軟件包
py2exe:將 Python 腳本變為獨立軟件包
pynsist:用來創建 Windows 安裝程序的工具
cx-Freeze:跨平臺的用于打包成可執行文件的庫
buildout:一個構建系統
BitBake:針對嵌入式 Linux 的構建工具
fabricate:自動找到依賴關系的構建工具
PlatformIO:多平臺命令行構建工具
PyBuilder:純 Python 實現的持續化構建工具
SCons:軟件構建工具
IPython:功能豐富的工具
bpython:界面豐富的 Python 解析器
ptpython:高級交互式 Python 解析器
asciimatics:跨平臺、全屏終端庫
cement:Python 的命令行程序框架
click:通過組合的方式來創建精美命令行界面的包
cliff:用于創建命令行程序的框架
clint:Python 命令行程序工具
colorama:跨平臺彩色終端文本
docopt:Python 風格的命令行參數解析器
Gooey:將命令行程序變成一個 GUI 程序
python-prompt-toolkit:用于構建強大的交互式命令行程序的庫
python-fire:Google 出品的一個構建命令行界面的庫
Pythonpy:在命令行中直接執行任何 Python 指令
Clime:可以轉換任何模塊為多的 CLI 命令程序
docopt:Python 命令行參數分析器
pycli:命令行應用程序
rainbowstream:推特客戶終端
argparse:寫命令行腳本工具
pyHook:基于 Python 的“鉤子”庫
pstuil:跨平臺地方便獲取和控制系統的進程庫
aws-cli:Amazon Web Services 的通用命令行界面
bashplotlib:在終端中進行繪圖
caniusepython3:判斷是哪個項目妨礙完美移植代碼到 Python3
cookiecutter:從 cookiecutters 創建項目的一個命令行工具
doitlive:用來在終端中進行現場演示的工具
pyftpdlib:速度極快和可擴展的 Python FTP 服務庫
howdoi:通過命令行獲取即時的編程問題解答
httpie:命令行 HTTP 客戶端
PathPicker:從 bash 輸出中選出文件
percol:向 UNIX shell 傳統管道概念中加入交互式選擇功能
SAWS:一個加強版的 AWS 命令行
thefuck:修正之前的命令行指令
mycli:MySQL 命令行客戶端
pgcli:Postgres 命令行工具
try:簡單的命令行工具,用來試用 python 庫
apache-libcloud:為各種云設計的 Python 庫
boto:Amazon Web Services 的 Python 接口
django-wordpress:WordPress 與 Django 的結合
facebook-sdk:Facebook 平臺的 Python SDK
facepy:Facebook’s Graph API
gmail:Gmail 的 Python 接口
google-api-python-client:Python 用的 Google APIs 客戶端庫
gspread:Google 電子表格的 Python API
twython:Twitter API 的封裝
cffi:用來調用 C 代碼的外來函數接口
ctypes:另一個用來調用 C 代碼的外來函數接口
PyCUDA:Nvidia CUDA API 的封裝
SWIG:簡化的封裝和接口生成器
dpark:Spark 的 Python 版
dumbo:可以讓人輕松的編寫和運行 Hadoop 程序
luigi:構建批處理作業的復雜流水線
mrjob:在 Hadoop 或 Amazon Web Services 上運行 MapReduce 任務
PySpark:Spark 的 Python API
streamparse:運行針對事實數據流的 Python 代碼
CyToolz:Toolz 的 Cython 實現
fn.py:在 Python 中進行函數式編程
funcy:炫酷又實用的函數式工具
Toolz:一組用于迭代器,函數和字典的函數式編程工具
Python-Future:Python 2 和 Python 3 之間丟失的那個兼容性層
Python-Modernize:使 Python 代碼更加現代化以便最終遷移到 Python 3
Six:Python 2 和 3 的兼容性工具
Elpy:Emacs Python 開發環境
SublimeJEDI:一個 Sublime Text 插件,用來使用自動補全庫 Jedi
Anaconda:Anaconda 把 Sublime Text 3 變成一個功能齊全的 Python IDE
YouCompleteMe:引入基于 Jedi 的 Python 自動補全引擎
Jedi-vim:綁定 Vim 和 Jedi 自動補全庫
Python-mode:將 Vim 變成 Python IDE
PTVS:Visual Studio 的 Python 工具
Tushare:可以提供免費股票、基金、期貨、港股等金融數據的開源工具
Ta-Lib:金融數據技術分析庫
AkSHare:一個非常棒的免費金融數據平臺
algorithms:一個 Python 算法模塊
python-patterns:Python 設計模式的集合
sortedcontainers:SortedList,SortedDict 和 SortedSet 類型
blinker:一個快速的 Python 進程內信號/事件分發系統
itsdangerous:一系列輔助工具,用來將可信的數據傳入不可信的環境
pluginbase:一個簡單但是靈活的 Python 插件系統
Pychievements:一個用來創建和追蹤成就的 Python 框架
Tryton:一個通用商務框架
以上是生活随笔為你收集整理的整理了上千个 Python 工具库,涵盖24个大方向的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SpringBoot项目,从创建到简单实
- 下一篇: python布尔类型的两个值_布尔人有两