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

環(huán)境管理

管理 Python 版本和環(huán)境的工具

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

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

Vex:可以在虛擬環(huán)境中執(zhí)行命令。

virtualenv:創(chuàng)建獨立 Python 環(huán)境的工具。

virtualenvwrapper:virtualenv 的一組擴展。

自學(xué)python的路真的好難,小編要跪了。

小編Q君羊883444106

分發(fā)

打包為可執(zhí)行文件以便分發(fā)。

PyInstaller:將 Python 程序轉(zhuǎn)換成獨立的執(zhí)行文件(跨平臺)。

dh-virtualenv:構(gòu)建并將 virtualenv 虛擬環(huán)境作為一個 Debian 包來發(fā)布。

Nuitka:將腳本、模塊、包編譯成可執(zhí)行文件或擴展模塊。

py2app:將 Python 腳本變?yōu)楠毩④浖∕ac OS X)。

py2exe:將 Python 腳本變?yōu)楠毩④浖╓indows)。

pynsist:一個用來創(chuàng)建 Windows 安裝程序的工具,可以在安裝程序中打包 Python本身。

將源碼編譯成軟件。

buildout:一個構(gòu)建系統(tǒng),從多個組件來創(chuàng)建,組裝和部署應(yīng)用。

fabricate:對任何語言自動找到依賴關(guān)系的構(gòu)建工具。

PlatformIO:多平臺命令行構(gòu)建工具。

PyBuilder:純 Python 實現(xiàn)的持續(xù)化構(gòu)建工具。

SCons:軟件構(gòu)建工具。

交互式解析器

交互式 Python 解析器。

IPython:功能豐富的工具,非常有效的使用交互式 Python。

bpython:界面豐富的 Python 解析器。

ptpython:高級交互式Python解析器, 構(gòu)建于python-prompt-toolkit 之上。

文件

文件管理和 MIME(多用途的網(wǎng)際郵件擴充協(xié)議)類型檢測。

imghdr:(Python 標(biāo)準(zhǔn)庫)檢測圖片類型。

mimetypes:(Python 標(biāo)準(zhǔn)庫)將文件名映射為 MIME 類型。

path.py:對 os.path 進(jìn)行封裝的模塊。

pathlib:(Python3.4+ 標(biāo)準(zhǔn)庫)跨平臺的、面向?qū)ο蟮穆窂讲僮鲙臁?/p>

python-magic:文件類型檢測的第三方庫 libmagic 的 Python 接口。

Unipath:用面向?qū)ο蟮姆绞讲僮魑募湍夸洝?/p>

watchdog:管理文件系統(tǒng)事件的 API 和 shell 工具。

通用

chardet:字符編碼檢測器,兼容 Python2 和 Python3。

difflib:(Python 標(biāo)準(zhǔn)庫)幫助我們進(jìn)行差異化比較。

ftfy:讓Unicode文本更完整更連貫。

fuzzywuzzy:模糊字符串匹配。

Levenshtein:快速計算編輯距離以及字符串的相似度。

pangu.py:在中日韓語字符和數(shù)字字母之間添加空格。

yfiglet-figlet:pyfiglet -figlet 的 Python實現(xiàn)。

shortuuid:一個生成器庫,用以生成簡潔的,明白的,URL 安全的 UUID。

unidecode:Unicode 文本的 ASCII 轉(zhuǎn)換形式 。

uniout:打印可讀的字符,而不是轉(zhuǎn)義的字符串。

xpinyin:一個用于把漢字轉(zhuǎn)換為拼音的庫。

simplejson:Python的JSON編碼、解碼器。

Slug化

awesome-slugify:一個 Python slug 化庫,可以保持 Unicode。

python-slugify:Python slug 化庫,可以把 unicode 轉(zhuǎn)化為 ASCII。

unicode-slugify:一個 slug 工具,可以生成 unicode slugs ,需要依賴 Django 。

解析器

phonenumbers:解析,格式化,儲存,驗證電話號碼。

PLY:lex 和 yacc 解析工具的 Python 實現(xiàn)。

Pygments:通用語法高亮工具。

pyparsing:生成通用解析器的框架。

python-nameparser:把一個人名分解為幾個獨立的部分。

python-user-agents:瀏覽器 user agent 解析器。

sqlparse:一個無驗證的 SQL 解析器。

特殊文本格式處理

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

PDF

PDFMiner:一個用于從PDF文檔中抽取信息的工具。

PyPDF2:一個可以分割,合并和轉(zhuǎn)換 PDF 頁面的庫。

ReportLab:快速創(chuàng)建富文本 PDF 文檔。

Markdown

Mistune:快速并且功能齊全的純 Python 實現(xiàn)的 Markdown 解析器。

Python-Markdown:John Gruber’s Markdown 的 Python 版實現(xiàn)。

Python-Markdown2:純 Python 實現(xiàn)的 Markdown 解析器,比 Python-Markdown 更快,更準(zhǔn)確,可擴展。

PyYAML:Python 版本的 YAML 解析器。

CSV

csvkit:用于轉(zhuǎn)換和操作 CSV 的工具。

Archive

unp:一個用來方便解包歸檔文件的命令行工具。

自然語言處理

用來處理人類語言的庫。

NLTK:一個先進(jìn)的平臺,用以構(gòu)建處理人類語言數(shù)據(jù)的 Python 程序。

jieba:中文分詞工具。

langid.py:獨立的語言識別系統(tǒng)。

Pattern:Python 網(wǎng)絡(luò)信息挖掘模塊。

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

TextBlob:為進(jìn)行普通自然語言處理任務(wù)提供一致的 API。

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

cement:Python 的命令行程序框架。

click:一個通過組合的方式來創(chuàng)建精美命令行界面的包。

cliff:一個用于創(chuàng)建命令行程序的框架,可以創(chuàng)建具有多層命令的命令行程序。

clint:Python 命令行程序工具。

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

docopt:Python 風(fēng)格的命令行參數(shù)解析器。

Gooey:一條命令,將命令行程序變成一個 GUI 程序。

python-prompt-toolkit:一個用于構(gòu)建強大的交互式命令行程序的庫。

Pythonpy:在命令行中直接執(zhí)行任何Python指令。

下載器

用來進(jìn)行下載的庫.

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

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

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

youtube-dl:一個小巧的命令行程序,用來下載 YouTube 視頻。

OCR

光學(xué)字符識別庫。

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

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

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

Video

用來操作視頻和GIF的庫。

moviepy:一個用來進(jìn)行基于腳本的視頻編輯模塊,適用于多種格式,包括動圖 GIFs。

scikit-video:SciPy 視頻處理常用程序。

地理位置

地理編碼地址以及用來處理經(jīng)緯度的庫。

GeoDjango:世界級地理圖形 web 框架。

GeoIP:MaxMind GeoIP Legacy 數(shù)據(jù)庫的 Python API。

geojson:GeoJSON 的 Python 綁定及工具。

geopy:Python 地址編碼工具箱。

pygeoip:純 Python GeoIP API。

django-countries:一個 Django 應(yīng)用程序,提供用于表格的國家選擇功能,國旗圖標(biāo)靜態(tài)文件以及模型中的國家字段。

使用HTTP的庫。

requests:人性化的HTTP請求庫。

grequests:requests 庫 + gevent ,用于異步 HTTP 請求.

httplib2:全面的 HTTP 客戶端庫。

treq:類似 requests 的Python API 構(gòu)建于 Twisted HTTP 客戶端之上。

urllib3:一個具有線程安全連接池,支持文件 post,清晰友好的 HTTP 庫。

數(shù)據(jù)庫

Python實現(xiàn)的數(shù)據(jù)庫。

pickleDB:一個簡單,輕量級鍵值儲存數(shù)據(jù)庫。

PipelineDB:流式 SQL 數(shù)據(jù)庫。

TinyDB:一個微型的,面向文檔型數(shù)據(jù)庫。

ZODB:一個 Python 原生對象數(shù)據(jù)庫。一個鍵值和對象圖數(shù)據(jù)庫。

數(shù)據(jù)庫驅(qū)動

用來連接和操作數(shù)據(jù)庫的庫。

MySQL:awesome-mysql系列

mysql-python:Python 的 MySQL 數(shù)據(jù)庫連接器。

ysqlclient:mysql-python 分支,支持 Python 3。

oursql:一個更好的 MySQL 連接器,支持原生預(yù)編譯指令和 BLOBs.

PyMySQL:純 Python MySQL 驅(qū)動,兼容 mysql-python。

PostgreSQL

psycopg2:Python 中最流行的 PostgreSQL 適配器。

queries:psycopg2 庫的封裝,用來和 PostgreSQL 進(jìn)行交互。

txpostgres:基于 Twisted 的異步 PostgreSQL 驅(qū)動。

apsw:另一個 Python SQLite封裝。

dataset:在數(shù)據(jù)庫中存儲Python字典

pymssql:一個簡單的Microsoft SQL Server數(shù)據(jù)庫接口。

NoSQL 數(shù)據(jù)庫

cassandra-python-driver:Cassandra 的 Python 驅(qū)動。

HappyBase:一個為 Apache HBase 設(shè)計的,對開發(fā)者友好的庫。

Plyvel:一個快速且功能豐富的 LevelDB 的 Python 接口。

py2neo:Neo4j restful 接口的Python 封裝客戶端。

pycassa:Cassandra 的 Python Thrift 驅(qū)動。

PyMongo:MongoDB 的官方 Python 客戶端。

telephus:基于 Twisted 的 Cassandra 客戶端。

txRedis:基于 Twisted 的 Redis 客戶端。

實現(xiàn)對象關(guān)系映射或數(shù)據(jù)映射技術(shù)的庫。

關(guān)系型數(shù)據(jù)庫

Django Models:Django 的一部分。

SQLAlchemy:Python SQL 工具以及對象關(guān)系映射工具。

awesome-sqlalchemy系列

Peewee:一個小巧,富有表達(dá)力的 ORM。

PonyORM:提供面向生成器的 SQL 接口的 ORM。

python-sql:編寫 Python 風(fēng)格的 SQL 查詢。

NoSQL 數(shù)據(jù)庫

django-mongodb-engine:Django MongoDB 后端。

PynamoDB:Amazon DynamoDB 的一個 Python 風(fēng)格接口。

flywheel:Amazon DynamoDB 的對象映射工具。

MongoEngine:一個Python 對象文檔映射工具,用于 MongoDB。

hot-redis:為 Redis 提供 Python 豐富的數(shù)據(jù)類型。

redisco:一個 Python 庫,提供可以持續(xù)存在在 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 協(xié)議且具有WSGI 線程池。

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

web2py:一個全棧 web 框架和平臺,專注于簡單易用。

Tornado:一個web 框架和異步網(wǎng)絡(luò)庫。

權(quán)限

允許或拒絕用戶訪問數(shù)據(jù)或功能的庫。

Carteblanche:Module to align code with thoughts of users and designers. Also magically handles navigation and permissions.

django-guardian:Django 1.2+ 實現(xiàn)了單個對象權(quán)限。

django-rules:一個小巧但是強大的應(yīng)用,提供對象級別的權(quán)限管理,且不需要使用數(shù)據(jù)庫。

CMS

內(nèi)容管理系統(tǒng)

odoo-cms: 一個開源的,企業(yè)級 CMS,基于odoo。

djedi-cms:一個輕量級但卻非常強大的 Django CMS ,考慮到了插件,內(nèi)聯(lián)編輯以及性能。

FeinCMS:基于 Django 構(gòu)建的最先進(jìn)的內(nèi)容管理系統(tǒng)之一。

Kotti:一個高級的,Python 范的 web 應(yīng)用框架,基于 Pyramid 構(gòu)建。

Mezzanine:一個強大的,持續(xù)的,靈活的內(nèi)容管理平臺。

Opps:一個為雜志,報紙網(wǎng)站以及大流量門戶網(wǎng)站設(shè)計的 CMS 平臺,基于 Django。

Plone:一個構(gòu)建于開源應(yīng)用服務(wù)器 Zope 之上的 CMS。

Quokka:靈活,可擴展的小型 CMS,基于 Flask 和 MongoDB。

Wagtail:一個 Django 內(nèi)容管理系統(tǒng)。

Widgy:最新的 CMS 框架,基于 Django。

Django

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

django-formapi:為 Django 的表單驗證,創(chuàng)建 JSON APIs 。

Flask

flask-api:為 flask 開發(fā)的,可瀏覽 Web APIs 。

flask-restful:為 flask 快速創(chuàng)建REST APIs 。

flask-restless:為 SQLAlchemy 定義的數(shù)據(jù)庫模型創(chuàng)建 RESTful APIs 。

eve:REST API 框架,由 Flask, MongoDB 等驅(qū)動。

Pyramid

cornice:一個Pyramid 的 REST 框架 。

與框架無關(guān)的

falcon:一個用來建立云 API 和 web app 后端的高性能框架。

sandman:為現(xiàn)存的數(shù)據(jù)庫驅(qū)動系統(tǒng)自動創(chuàng)建 REST APIs 。

restless:框架無關(guān)的 REST 框架 ,基于從 Tastypie 學(xué)到的知識。

ripozo:快速創(chuàng)建 REST/HATEOAS/Hypermedia APIs。

驗證

實現(xiàn)驗證方案的庫。

Jinja2:一個現(xiàn)代的,對設(shè)計師友好的模板引擎。

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

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

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

處理事件以及任務(wù)隊列的庫。

celery:一個異步任務(wù)隊列/作業(yè)隊列,基于分布式消息傳遞。

huey:小型多線程任務(wù)隊列。

mrq:Mr. Queue -一個 Python 的分布式 worker 任務(wù)隊列, 使用 Redis 和 gevent。

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

對數(shù)據(jù)進(jìn)行索引和執(zhí)行搜索查詢的庫和軟件。

django-haystack:Django 模塊化搜索。

elasticsearch-dsl-py:Elasticsearch 的官方高級 Python 客戶端。

solrpy:solr的 Python 客戶端。

Whoosh:一個快速的純 Python 搜索引擎庫。

動態(tài)消息

用來創(chuàng)建用戶活動的庫。

django-activity-stream:從你的站點行為中生成通用活動信息流。

Stream-Framework:使用 Cassandra 和 Redis 創(chuàng)建動態(tài)消息和通知系統(tǒng)。

管理、壓縮、縮小網(wǎng)站資源的工具。

django-compressor:將鏈接和內(nèi)聯(lián)的 JavaScript 或 CSS 壓縮到一個單獨的緩存文件中。

django-storages:一個針對 Django 的自定義存儲后端的工具集合。

fanstatic:打包、優(yōu)化,并且把靜態(tài)文件依賴作為 Python 的包來提供。

File Conveyor:一個后臺駐留的程序,用來發(fā)現(xiàn)和同步文件到 CDNs, S3 和 FTP。

Flask-Assets:幫你將 web 資源整合到你的 Flask app 中。

jinja-assets-compressor:一個 Jinja 擴展,用來編譯和壓縮你的資源。

webassets:為你的靜態(tài)資源打包、優(yōu)化和管理生成獨一無二的緩存 URL。

緩存

緩存數(shù)據(jù)的庫。

Beaker:一個緩存和會話庫,可以用在 web 應(yīng)用和獨立 Python腳本和應(yīng)用上。

django-cacheops:具有自動顆粒化事件驅(qū)動失效功能的 ORM。

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

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

HermesCache:Python 緩存庫,具有基于標(biāo)簽的失效和 dogpile effect 保護(hù)功能。

johnny-cache:django應(yīng)用緩存框架。

pylibmc:libmemcached 接口的 Python 封裝。

HTML處理

處理 HTML和XML的庫。

BeautifulSoup:以 Python 風(fēng)格的方式來對 HTML 或 XML 進(jìn)行迭代,搜索和修改。

bleach:一個基于白名單的 HTML 清理和文本鏈接庫。

cssutils:一個 Python 的 CSS 庫。

html5lib:一個兼容標(biāo)準(zhǔn)的 HTML 文檔和片段解析及序列化庫。

lxml:一個非常快速,簡單易用,功能齊全的庫,用來處理 HTML 和 XML。

MarkupSafe:為Python 實現(xiàn) XML/HTML/XHTML 標(biāo)記安全字符串。

pyquery:一個解析 HTML 的庫,類似 jQuery。

untangle:將XML文檔轉(zhuǎn)換為Python對象,使其可以方便的訪問。

xhtml2pdf:HTML/CSS 轉(zhuǎn) PDF 工具。

xmltodict:像處理 JSON 一樣處理 XML。

數(shù)據(jù)驗證

數(shù)據(jù)驗證庫。多用于表單驗證。

Cerberus:A mappings-validator with a variety of rules, normalization-features and simple customization that uses a pythonic schema-definition.

colander:一個用于對從 XML, JSON,HTML 表單獲取的數(shù)據(jù)或其他同樣簡單的序列化數(shù)據(jù)進(jìn)行驗證和反序列化的系統(tǒng)。

kmatch:一種用于匹配/驗證/篩選 Python 字典的語言。

Schematics:數(shù)據(jù)結(jié)構(gòu)驗證。

valideer:輕量級可擴展的數(shù)據(jù)驗證和適配庫。官網(wǎng)

voluptuous:一個 Python 數(shù)據(jù)驗證庫。主要是為了驗證傳入 Python的 JSON,YAML 等數(shù)據(jù)。

反垃圾技術(shù)

幫助你和電子垃圾進(jìn)行戰(zhàn)斗的庫。

django-simple-captcha:一個簡單、高度可定制的Django 應(yīng)用,可以為任何Django表單添加驗證碼。

django-simple-spam-blocker:一個用于Django的簡單的電子垃圾屏蔽工具。

標(biāo)記

用來進(jìn)行標(biāo)記的庫。

django-taggit:簡單的 Django 標(biāo)記工具。

管理面板

管理界面庫。

Ajenti:一個你的服務(wù)器值得擁有的管理面板。

django-suit:Django 管理界面的一個替代品 (僅對于非商業(yè)用途是免費的)。

django-xadmin:Django admin 的一個替代品,具有很多不錯的功能。

flask-admin:一個用于 Flask 的簡單可擴展的管理界面框架。官網(wǎng)

flower:一個對 Celery 集群進(jìn)行實時監(jiān)控和提供 web 管理界面的工具。

Grappelli:Django 管理界面的一個漂亮的皮膚。

靜態(tài)站點生成器

靜態(tài)站點生成器是一個軟件,它把文本和模板作為輸入,然后輸出HTML文件。

Pelican:使用 Markdown 或 ReST 來處理內(nèi)容, Jinja 2 來制作主題。支持 DVCS, Disqus.。AGPL 許可。

Cactus:為設(shè)計師設(shè)計的靜態(tài)站點生成器。

Hyde:基于 Jinja2 的靜態(tài)站點生成器。

Nikola:一個靜態(tài)網(wǎng)站和博客生成器。

Tinkerer:Tinkerer 是一個博客引擎/靜態(tài)站點生成器,由Sphinx驅(qū)動。

Lektor:一個簡單易用的靜態(tài) CMS 和博客引擎。

進(jìn)程

操作系統(tǒng)進(jìn)程啟動及通信庫。

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

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

并發(fā)和并行

用以進(jìn)行并發(fā)和并行操作的庫。

multiprocessing:(Python 標(biāo)準(zhǔn)庫) 基于進(jìn)程的“線程”接口。

threading:(Python 標(biāo)準(zhǔn)庫)更高層的線程接口。

eventlet:支持 WSGI 的異步框架。

Tomorrow:用于產(chǎn)生異步代碼的神奇的裝飾器語法實現(xiàn)。

uvloop:在libuv之上超快速實現(xiàn)asyncio事件循環(huán)。

netius:異步,非常快速。

rocket:多線程。

waitress:多線程, 是它驅(qū)動著 Pyramid 框架。

Werkzeug:一個 WSGI 工具庫,驅(qū)動著 Flask ,而且可以很方便大嵌入到你的項目中去。

RPC 服務(wù)器

兼容 RPC 的服務(wù)器。

SimpleJSONRPCServer:這個庫是 JSON-RPC 規(guī)范的一個實現(xiàn)。

SimpleXMLRPCServer:(Python 標(biāo)準(zhǔn)庫) 簡單的 XML-RPC 服務(wù)器實現(xiàn),單線程。

zeroRPC:zerorpc 是一個靈活的 RPC 實現(xiàn),基于 ZeroMQ 和 MessagePack。

密碼學(xué)

cryptography:這個軟件包意在提供密碼學(xué)基本內(nèi)容和方法提供給 Python 開發(fā)者。

hashids:在 Python 中實現(xiàn) hashids 。

Paramiko:SSHv2 協(xié)議的 Python (2.6+, 3.3+) ,提供客戶端和服務(wù)端的功能。

Passlib:安全密碼存儲/哈希庫,

PyCrypto:Python 密碼學(xué)工具箱。

PyNacl:網(wǎng)絡(luò)和密碼學(xué)(NaCl) 庫的 Python 綁定。

圖形用戶界面

用來創(chuàng)建圖形用戶界面程序的庫。

curses:內(nèi)建的 ncurses 封裝,用來創(chuàng)建終端圖形用戶界面。

enaml:使用類似 QML 的Declaratic語法來創(chuàng)建美觀的用戶界面。

kivy:一個用來創(chuàng)建自然用戶交互(NUI)應(yīng)用程序的庫,可以運行在 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 的一個事實標(biāo)準(zhǔn)庫。

Toga:一個 Python 原生的, 操作系統(tǒng)原生的 GUI 工具包。

urwid:一個用來創(chuàng)建終端 GUI 應(yīng)用的庫,支持組件,事件和豐富的色彩等。

wxPython:wxPython 是 wxWidgets C++ 類庫和 Python 語言混合的產(chǎn)物。

PyGObject:GLib/GObject/GIO/GTK+ (GTK+3) 的 Python 綁定

Flexx:Flexx 是一個純 Python 語言編寫的用來創(chuàng)建 GUI 程序的工具集,它使用 web 技術(shù)進(jìn)行界面的展示。

游戲開發(fā)

超贊的游戲開發(fā)庫。

Cocos2d:cocos2d 是一個用來開發(fā) 2D 游戲, 示例和其他圖形/交互應(yīng)用的框架。基于 pyglet。

Panda3D:由迪士尼開發(fā)的 3D 游戲引擎,并由卡內(nèi)基梅隴娛樂技術(shù)中心負(fù)責(zé)維護(hù)。使用C++編寫, 針對 Python 進(jìn)行了完全的封裝。

Pygame:Pygame 是一組 Python 模塊,用來編寫游戲。

PyOgre:Ogre 3D 渲染引擎的 Python 綁定,可以用來開發(fā)游戲和仿真程序等任何 3D 應(yīng)用。

PyOpenGL:OpenGL 的 Python 綁定及其相關(guān) APIs。

PySDL2:SDL2 庫的封裝,基于 ctypes。

RenPy:一個視覺小說(visual novel)引擎。

日志

用來生成和操作日志的庫。

logging:(Python 標(biāo)準(zhǔn)庫) 為 Python 提供日志功能。

logbook:Logging 庫的替代品。

Eliot:為復(fù)雜的和分布式系統(tǒng)創(chuàng)建日志。

Raven:Sentry的 Python 客戶端。

Sentry:實時記錄和收集日志的服務(wù)器。

Testing

進(jìn)行代碼庫測試和生成測試數(shù)據(jù)的庫。

測試框架

unittest:(Python 標(biāo)準(zhǔn)庫) 單元測試框架。

nose:nose 擴展了 unittest 的功能。

contexts:一個 Python 3.3+ 的 BDD 框架。受到C# – Machine.Specifications的啟發(fā)。

hypothesis:Hypothesis 是一個基于先進(jìn)的 Quickcheck 風(fēng)格特性的測試庫。

mamba:Python 的終極測試工具, 擁護(hù)BDD。

PyAutoGUI:PyAutoGUI 是一個人性化的跨平臺 GUI 自動測試模塊。

pyshould:Should 風(fēng)格的斷言,基于 PyHamcrest。

pytest:一個成熟的全功能 Python 測試工具。

green:干凈,多彩的測試工具。

Web 測試

Selenium:Selenium WebDriver 的 Python 綁定。

locust:使用 Python 編寫的,可擴展的用戶加載測試工具。

sixpack:一個和語言無關(guān)的 A/B 測試框架。

splinter:開源的 web 應(yīng)用測試工具。

Mock測試

mock:(Python 標(biāo)準(zhǔn)庫) 一個用于偽造測試的庫。

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 測試創(chuàng)建隨機固件

代碼覆蓋率

coverage:代碼覆蓋率測量。

偽數(shù)據(jù)

faker:一個 Python 庫,用來生成偽數(shù)據(jù)。

fake2db:偽數(shù)據(jù)庫生成器。

radar:生成隨機的日期/時間。

錯誤處理

FuckIt.py:FuckIt.py 使用最先進(jìn)的技術(shù)來保證你的 Python 代碼無論對錯都能繼續(xù)運行。

代碼分析和Lint工具

進(jìn)行代碼分析,解析和操作代碼庫的庫和工具。

代碼分析

coala:語言獨立和易于擴展的代碼分析應(yīng)用程序。

code2flow:把你的 Python 和 JavaScript 代碼轉(zhuǎn)換為流程圖。

pycallgraph:這個庫可以把你的Python 應(yīng)用的流程(調(diào)用圖)進(jìn)行可視化。

pysonar2:Python 類型推斷和檢索工具。

Lint工具

Flake8:模塊化源碼檢查工具: pep8, pyflakes 以及 co。

Pylint:一個完全可定制的源碼分析器。

YAPF: Google的Python代碼格式化工具。

pylama:Python 和 JavaScript 的代碼審查工具。

代碼格式化

autopep8:自動格式化 Python 代碼,以使其符合 PEP8 規(guī)范。

Debugging Tools

用來進(jìn)行代碼調(diào)試的庫。

調(diào)試器

ipdb:IPython 啟用的 pdb。

pudb:全屏,基于控制臺的 Python 調(diào)試器。

pyringe:可以在 Python 進(jìn)程中附加和注入代碼的調(diào)試器。

wdb:一個奇異的 web 調(diào)試器,通過 WebSockets 工作。

winpdb:一個具有圖形用戶界面的 Python 調(diào)試器,可以進(jìn)行遠(yuǎn)程調(diào)試,基于 rpdb2。

django-debug-toolbar:為 Django 顯示各種調(diào)試信息。

django-devserver:一個 Django 運行服務(wù)器的替代品。

flask-debugtoolbar:django-debug-toolbar 的 flask 版。

性能分析器

lineprofiler:逐行性能分析。

Memory Profiler:監(jiān)控 Python 代碼的內(nèi)存使用。

內(nèi)存

profiling:一個交互式 Python 性能分析工具。

其他

pyelftools:解析和分析 ELF 文件以及 DWARF 調(diào)試信息。

python-statsd:statsd 服務(wù)器的 Python 客戶端。

Science and Data Analysis

用來進(jìn)行科學(xué)計算和數(shù)據(jù)分析的庫。

astropy:一個天文學(xué) Python 庫。

bcbio-nextgen:這個工具箱為全自動高通量測序分析提供符合最佳實踐的處理流程。

bccb:生物分析相關(guān)代碼集合。

Biopython:Biopython 是一組可以免費使用的用來進(jìn)行生物計算的工具。

blaze:NumPy 和 Pandas 的大數(shù)據(jù)接口。

cclib:一個用來解析和解釋計算化學(xué)軟件包輸出結(jié)果的庫。

NetworkX:一個為復(fù)雜網(wǎng)絡(luò)設(shè)計的高性能軟件。

Neupy:執(zhí)行和測試各種不同的人工神經(jīng)網(wǎng)絡(luò)算法。

Numba:Python JIT (just in time) 編譯器,針對科學(xué)用的 Python ,由Cython 和 NumPy 的開發(fā)者開發(fā)。

Open Babel:一個化學(xué)工具箱,用來描述多種化學(xué)數(shù)據(jù)。

Open Mining:使用 Python 挖掘商業(yè)情報 (BI) (Pandas web 接口)。

orange:通過可視化編程或 Python 腳本進(jìn)行數(shù)據(jù)挖掘,數(shù)據(jù)可視化,分析和機器學(xué)習(xí)。

Pandas:提供高性能,易用的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)分析工具。

PyDy:PyDy 是 Python Dynamics 的縮寫,用來為動力學(xué)運動建模工作流程提供幫助, 基于 NumPy, SciPy, IPython 和 matplotlib。

PyMC:馬爾科夫鏈蒙特卡洛采樣工具。

RDKit:化學(xué)信息學(xué)和機器學(xué)習(xí)軟件。

SciPy:由一些基于 Python ,用于數(shù)學(xué),科學(xué)和工程的開源軟件構(gòu)成的生態(tài)系統(tǒng)。

statsmodels:統(tǒng)計建模和計量經(jīng)濟(jì)學(xué)。

SymPy:一個用于符號數(shù)學(xué)的 Python 庫。

zipline:一個 Python 算法交易庫。

Bayesian-belief-networks:優(yōu)雅的貝葉斯信念網(wǎng)絡(luò)框架。

keras: 以tensorflow或者theano為后端的深度學(xué)習(xí)封裝庫,快速上手神經(jīng)網(wǎng)絡(luò)官網(wǎng)

數(shù)據(jù)可視化

進(jìn)行數(shù)據(jù)可視化的庫。 參見: awesome-javascript。

matplotlib:一個 Python 2D 繪圖庫。

bokeh:用 Python 進(jìn)行交互式 web 繪圖。

ggplot:ggplot2 給 R 提供的 API 的 Python 版本。

plotly:協(xié)同 Python 和 matplotlib 工作的 web 繪圖庫。

pygal:一個 Python SVG 圖表創(chuàng)建工具。

pygraphviz:Graphviz 的 Python 接口。

PyQtGraph:交互式實時2D/3D/圖像繪制及科學(xué)/工程學(xué)組件。

SnakeViz:一個基于瀏覽器的 Python’s cProfile 模塊輸出結(jié)果查看工具。

VisPy:基于 OpenGL 的高性能科學(xué)可視化工具。

計算機視覺

計算機視覺庫。

OpenCV:開源計算機視覺庫。

pyocr:Tesseract和Cuneiform的包裝庫。

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

SimpleCV:一個用來創(chuàng)建計算機視覺應(yīng)用的開源框架。

MapReduce

MapReduce 框架和庫。

dpark:Spark 的 Python 克隆版,一個類似 MapReduce 的框架。

dumbo:這個 Python 模塊可以讓人輕松的編寫和運行 Hadoop 程序。

luigi:這個模塊幫你構(gòu)建批處理作業(yè)的復(fù)雜流水線。

mrjob:在 Hadoop 或 Amazon Web Services 上運行 MapReduce 任務(wù)。

PySpark:Spark 的 Python API 。

streamparse:運行針對事實數(shù)據(jù)流的 Python 代碼。集成了Apache Storm。

函數(shù)式編程

使用 Python 進(jìn)行函數(shù)式編程。

CyToolz:Toolz 的 Cython 實現(xiàn) : 高性能函數(shù)式工具。

fn.py:在 Python 中進(jìn)行函數(shù)式編程 : 實現(xiàn)了一些享受函數(shù)式編程缺失的功能。

funcy:炫酷又實用的函數(shù)式工具。

Toolz:一組用于迭代器,函數(shù)和字典的函數(shù)式編程工具。

第三方 API

用來訪問第三方 API的庫。 參見: List of Python API Wrappers and Libraries。

apache-libcloud:一個為各種云設(shè)計的 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 的封裝。

任務(wù)調(diào)度

任務(wù)調(diào)度庫。

APScheduler:輕巧但強大的進(jìn)程內(nèi)任務(wù)調(diào)度,使你可以調(diào)度函數(shù)。

doit:一個任務(wù)執(zhí)行和構(gòu)建工具。

Plan:如有神助地編寫 crontab 文件。

schedule:人性化的 Python 任務(wù)調(diào)度庫。

Spiff:使用純 Python 實現(xiàn)的強大的工作流引擎。

TaskFlow:一個可以讓你方便執(zhí)行任務(wù)的 Python 庫,一致并且可靠。

外來函數(shù)接口

網(wǎng)絡(luò)可視化和SDN

用來進(jìn)行網(wǎng)絡(luò)可視化和SDN(軟件定義網(wǎng)絡(luò))的工具和庫。

Mininet:一款流行的網(wǎng)絡(luò)模擬器以及用 Python 編寫的 API。

POX:一個針對基于 Python 的軟件定義網(wǎng)絡(luò)應(yīng)用(例如 OpenFlow SDN 控制器)的開源開發(fā)平臺。

Pyretic:火熱的 SDN 編程語言中的一員,為網(wǎng)絡(luò)交換機和模擬器提供強大的抽象能力。

SDX Platform:基于 SDN 的 IXP 實現(xiàn),影響了 Mininet, POX 和 Pyretic。

雜項

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

blinker:一個快速的 Python 進(jìn)程內(nèi)信號/事件分發(fā)系統(tǒng)。

itsdangerous:一系列輔助工具用來將可信的數(shù)據(jù)傳入不可信的環(huán)境。

pluginbase:一個簡單但是非常靈活的 Python 插件系統(tǒng)。

Pychievements:一個用來創(chuàng)建和追蹤成就的 Python 框架。

算法和設(shè)計模式

Python 實現(xiàn)的算法和設(shè)計模式。

algorithms:一個 Python 算法模塊。

python-patterns:Python 設(shè)計模式的集合。

sortedcontainers:快速,純 Python 實現(xiàn)的SortedList,SortedDict 和 SortedSet 類型。

編輯器插件

編輯器和 IDE 的插件

持續(xù)集成

參見: awesome-CIandCD.

Travis CI:一個流行的工具,為你的開源和私人項目提供持續(xù)集成服務(wù)。

Vexor CI:一個為私人 app 提供持續(xù)集成的工具,支持按分鐘付費。

Wercker:基于 Docker 平臺,用來構(gòu)建和部署微服務(wù)。

代碼質(zhì)量

Codacy:自動化代碼審查,更加快速的發(fā)布高質(zhì)量代碼。對于開源項目是免費的。

QuantifiedCode:一個數(shù)據(jù)驅(qū)動、自動、持續(xù)的代碼審查工具。

跪求大佬指教!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容