Python常用庫 - 【持續整理歸檔】,比較多,會逐步慢慢細化分類和擴從python常用庫。(最後更新:2020-4-8)
爲方便Python開發人員進行敏捷開發,高效的完成工作需求,耗時很久整理的Python常用庫。
目錄
7、文件管理和 MIME(多用途的網際郵件擴充協議)類型檢測。
28、RESTful API(用來開發RESTful APIs的庫)
48、靜態站點生成器(靜態站點生成器是一個軟件,它把文本和模板作爲輸入,然後輸出HTML文件)
53、WSGI 服務器(兼容 WSGI 的 web 服務器)
60、代碼分析和Lint工具(進行代碼分析,解析和操作代碼庫的庫和工具)
64、數據可視化(進行數據可視化的庫。 參見: awesome-javascript)
66、機器學習(機器學習庫。 參見: awesome-machine-learning.)
74、微軟的 Windows平臺(在 Windows 平臺上進行 Python 編程)
75、網絡可視化和SDN(用來進行網絡可視化和SDN(軟件定義網絡)的工具和庫)
77、兼容性(幫助從 Python 2 向 Python 3遷移的庫)
上面是歸類好的,以下是待整理、待歸類。持續整理中......最後整理日期:2020-4-8
#、其功能與軟件MATLAB、Scilab和GNU Octave類似。
1、管理 Python 版本和環境的工具(環境管理)
- p – 非常簡單的交互式 python 版本管理工具。
- pyenv – 簡單的 Python 版本管理工具。
- Vex – 可以在虛擬環境中執行命令。
- virtualenv – 創建獨立 Python 環境的工具。
- virtualenvwrapper- virtualenv 的一組擴展。
2、管理包和依賴的工具(包管理)
- pip – Python 包和依賴關係管理工具。
- pip-tools – 保證 Python 包依賴關係更新的一組工具。
- conda – 跨平臺,Python 二進制包管理工具。
- Curdling – 管理 Python 包的命令行工具。
- wheel – Python 分發的新標準,意在取代 eggs。
3、本地 PyPI 倉庫服務和代理(包倉庫)
- warehouse – 下一代 PyPI。
- Warehousebandersnatch – PyPA 提供的 PyPI 鏡像工具。
- devpi – PyPI 服務和打包/測試/分發工具。
- localshop – 本地 PyPI 服務(自定義包並且自動對 PyPI 鏡像)。
4、打包爲可執行文件以便分發(分發)
- PyInstaller – 將 Python 程序轉換成獨立的執行文件(跨平臺)。
- dh-virtualenv – 構建並將 virtualenv 虛擬環境作爲一個 Debian 包來發布。
- Nuitka – 將腳本、模塊、包編譯成可執行文件或擴展模塊。
- py2app – 將 Python 腳本變爲獨立軟件包(Mac OS X)。
- py2exe – 將 Python 腳本變爲獨立軟件包(Windows)。
- pynsist – 一個用來創建 Windows 安裝程序的工具,可以在安裝程序中打包 Python本身。
5、將源碼編譯成軟件(構建工具)
- buildout – 一個構建系統,從多個組件來創建,組裝和部署應用。
- BitBake – 針對嵌入式 Linux 的類似 make 的構建工具。
- fabricate – 對任何語言自動找到依賴關係的構建工具。
- PlatformIO – 多平臺命令行構建工具。
- PyBuilder – 純 Python 實現的持續化構建工具。
- SCons – 軟件構建工具。
6、交互式 Python 解析器(交互式解析器)
- IPython – 功能豐富的工具,非常有效的使用交互式 Python。
- bpython- 界面豐富的 Python 解析器。
- ptpython – 高級交互式Python解析器, 構建於python-prompt-toolkit 之上。
7、文件管理和 MIME(多用途的網際郵件擴充協議)類型檢測。
- imghdr – (Python 標準庫)檢測圖片類型。
- mimetypes – (Python 標準庫)將文件名映射爲 MIME 類型。
- path.py – 對 os.path 進行封裝的模塊。
- pathlib – (Python3.4+ 標準庫)跨平臺的、面向對象的路徑操作庫。
- python-magic- 文件類型檢測的第三方庫 libmagic 的 Python 接口。
- Unipath- 用面向對象的方式操作文件和目錄
- watchdog – 管理文件系統事件的 API 和 shell 工具
8、操作日期和時間的類庫(日期和時間)
- arrow- 更好的 Python 日期時間操作類庫。
- Chronyk – Python 3 的類庫,用於解析手寫格式的時間和日期。
- dateutil – Python datetime 模塊的擴展。
- delorean- 解決 Python 中有關日期處理的棘手問題的庫。
- moment – 一個用來處理時間和日期的Python庫。靈感來自於Moment.js。
- PyTime – 一個簡單易用的Python模塊,用於通過字符串來操作日期/時間。
- pytz – 現代以及歷史版本的世界時區定義。將時區數據庫引入Python。
- when.py – 提供用戶友好的函數來幫助用戶進行常用的日期和時間操作。
9、用於解析和操作文本的庫(文本處理)
1、通用:
- hardet – 字符編碼檢測器,兼容 Python2 和 Python3。
- difflib – (Python 標準庫)幫助我們進行差異化比較。
- ftfy – 讓Unicode文本更完整更連貫。
- fuzzywuzzy – 模糊字符串匹配。
- Levenshtein – 快速計算編輯距離以及字符串的相似度。
- pangu.py – 在中日韓語字符和數字字母之間添加空格。
- pyfiglet -figlet 的 Python實現。
- shortuuid – 一個生成器庫,用以生成簡潔的,明白的,URL 安全的 UUID。
- unidecode – Unicode 文本的 ASCII 轉換形式 。
- uniout – 打印可讀的字符,而不是轉義的字符串。
- xpinyin – 一個用於把漢字轉換爲拼音的庫。
2、Slug化
- awesome-slugify – 一個 Python slug 化庫,可以保持 Unicode。
- python-slugify – Python slug 化庫,可以把 unicode 轉化爲 ASCII。
- unicode-slugify – 一個 slug 工具,可以生成 unicode slugs ,需要依賴 Django 。
3、解析器
- phonenumbers – 解析,格式化,儲存,驗證電話號碼。
- PLY – lex 和 yacc 解析工具的 Python 實現。
- Pygments – 通用語法高亮工具。
- pyparsing – 生成通用解析器的框架。
- python-nameparser – 把一個人名分解爲幾個獨立的部分。
- python-user-agents – 瀏覽器 user agent 解析器。
- sqlparse – 一個無驗證的 SQL 解析器。
4、特殊文本格式處理 (一些用來解析和操作特殊文本格式的庫)
1.通用:
tablib – 一個用來處理中表格數據的模塊。
2.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 / xlrd – 讀寫 Excel 文件的數據和格式信息。
- relatorio – 模板化OpenDocument 文件。
3.PDF
- PDFMiner – 一個用於從PDF文檔中抽取信息的工具。
- PyPDF2 – 一個可以分割,合併和轉換 PDF 頁面的庫。
- ReportLab – 快速創建富文本 PDF 文檔。
4.Markdown
- Mistune – 快速並且功能齊全的純 Python 實現的 Markdown 解析器。
- Python-Markdown – John Gruber’s Markdown 的 Python 版實現。
5.YAML
- PyYAML – Python 版本的 YAML 解析器。
6.CSV
- csvkit – 用於轉換和操作 CSV 的工具。
7.Archive
- unp – 一個用來方便解包歸檔文件的命令行工具。
10、文檔(用以生成項目文檔的庫)
- Sphinx – Python 文檔生成器。
- awesome-sphinxdoc
- MkDocs – 對 Markdown 友好的文檔生成器。
- pdoc – 一個可以替換Epydoc 的庫,可以自動生成 Python 庫的 API 文檔。
- Pycco – 文學編程(literate-programming)風格的文檔生成器。
11、自然語言處理(用來處理人類語言的庫)
- NLTK – 一個先進的平臺,用以構建處理人類語言數據的 Python 程序。
- jieba – 中文分詞工具。
- langid.py – 獨立的語言識別系統。
- Pattern – Python 網絡信息挖掘模塊。
- SnowNLP – 一個用來處理中文文本的庫。
- TextBlob – 爲進行普通自然語言處理任務提供一致的 API。
- TextGrocery – 一簡單高效的短文本分類工具,基於 LibLinear 和 Jieba。
12、配置(用來保存和解析配置的庫)
- config – logging 模塊作者寫的分級配置模塊。
- ConfigObj – INI 文件解析器,帶驗證功能。
- ConfigParser – (Python 標準庫) INI 文件解析器。
- profig – 通過多種格式進行配置,具有數值轉換功能。
- python-decouple – 將設置和代碼完全隔離。
13、命令行工具(用於創建命令行程序的庫)
1.命令行程序開發
- cement – Python 的命令行程序框架。
- click – 一個通過組合的方式來創建精美命令行界面的包。
- cliff – 一個用於創建命令行程序的框架,可以創建具有多層命令的命令行程序。
- clint – Python 命令行程序工具。
- colorama – 跨平臺彩色終端文本。
- docopt – Python 風格的命令行參數解析器。
- Gooey – 一條命令,將命令行程序變成一個 GUI 程序。
- python-prompt-toolkit – 一個用於構建強大的交互式命令行程序的庫。
2.生產力工具
- 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 命令行工具,具有自動補全和語法高亮功能。
14、下載器(用來進行下載的庫)
- s3cmd – 一個用來管理Amazon S3 和 CloudFront 的命令行工具。
- s4cmd – 超級 S3 命令行工具,性能更加強勁。
- you-get – 一個 YouTube/Youku/Niconico 視頻下載器,使用 Python3 編寫。
- youtube-dl – 一個小巧的命令行程序,用來下載 YouTube 視頻。
15、圖像處理(用來操作圖像的庫)
- 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 。
16、OCR(光學字符識別庫)
- pyocr – Tesseract 和 Cuneiform 的一個封裝(wrapper)。
- pytesseract – Google Tesseract OCR 的另一個封裝(wrapper)。
- python-tesseract – Google Tesseract OCR 的一個包裝類。
17、音頻處理(用來操作音頻的庫)
- 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 文件和回放功能。
18、視頻處理(用來操作視頻和GIF的庫)
- moviepy – 一個用來進行基於腳本的視頻編輯模塊,適用於多種格式,包括動圖 GIFs。
- scikit-video – SciPy 視頻處理常用程序。
19、地理位置信息(地理編碼地址以及用來處理經緯度的庫)
- GeoDjango – 世界級地理圖形 web 框架。
- GeoIP – MaxMind GeoIP Legacy 數據庫的 Python API。
- geojson – GeoJSON 的 Python 綁定及工具。
- geopy – Python 地址編碼工具箱。
- pygeoip – 純 Python GeoIP API。
- django-countries – 一個 Django 應用程序,提供用於表格的國家選擇功能,國旗圖標靜態文件以及模型中的國家字段。
20、HTTP(使用HTTP的庫)
- requests – 人性化的HTTP請求庫。
- grequests – requests 庫 + gevent ,用於異步 HTTP 請求.
- httplib2 – 全面的 HTTP 客戶端庫。
- treq – 類似 requests 的Python API 構建於 Twisted HTTP 客戶端之上。
- urllib3 – 一個具有線程安全連接池,支持文件 post,清晰友好的 HTTP 庫。
21、數據庫(ython實現操作數據庫)
- pickleDB – 一個簡單,輕量級鍵值儲存數據庫。
- PipelineDB – 流式 SQL 數據庫。
- TinyDB – 一個微型的,面向文檔型數據庫。
- ZODB – 一個 Python 原生對象數據庫。一個鍵值和對象圖數據庫。
22、數據庫驅動(用來連接和操作數據庫的庫)
- MySQL – awesome-mysql系列
- mysql-python – Python 的 MySQL 數據庫連接器。
- mysqlclient – mysql-python 分支,支持 Python 3。
- oursql – 一個更好的 MySQL 連接器,支持原生預編譯指令和 BLOBs.
- PyMySQL – 純 Python MySQL 驅動,兼容 mysql-python。
1.PostgreSQL
- psycopg2 – Python 中最流行的 PostgreSQL 適配器。
- queries – psycopg2 庫的封裝,用來和 PostgreSQL 進行交互。
- txpostgres – 基於 Twisted 的異步 PostgreSQL 驅動。
2.其他關係型數據庫
- apsw – 另一個 Python SQLite封裝。
- dataset – 在數據庫中存儲Python字典 – 可以協同SQLite,MySQL,和 PostgreSQL工作。
- pymssql- 一個簡單的Microsoft SQL Server數據庫接口。
3.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 客戶端。
23、ORM(實現對象關係映射或數據映射技術的庫)
1.關係型數據庫
- Django Models – Django 的一部分。
- SQLAlchemy – Python SQL 工具以及對象關係映射工具。
- awesome-sqlalchemy系列
- Peewee – 一個小巧,富有表達力的 ORM。
- PonyORM – 提供面向生成器的 SQL 接口的 ORM。
- python-sql – 編寫 Python 風格的 SQL 查詢。
2.NoSQL 數據庫
- django-mongodb-engine – Django MongoDB 後端。
- PynamoDB – Amazon DynamoDB 的一個 Python 風格接口。
- flywheel – Amazon DynamoDB 的對象映射工具。
- MongoEngine – 一個Python 對象文檔映射工具,用於 MongoDB。
- hot-redis – 爲 Redis 提供 Python 豐富的數據類型。
- redisco – 一個 Python 庫,提供可以持續存在在 Redis 中的簡單模型和容器。
3.其他
- butterdb – Google Drive 電子表格的 Python ORM。
24、Web 框架(全棧 web 框架)
Django – Python 界最流行的 web 框架。
1.awesome-django系列
- Flask – 一個 Python 微型框架。 https://github.com/humiaozuzu/awesome-flask系列
- Pyramid – 一個小巧,快速,接地氣的開源Python web 框架。
- Pyramid – 一個小巧,快速,接地氣的開源Python web 框架。
2.awesome-pyramid系列
- Bottle – 一個快速小巧,輕量級的 WSGI 微型 web 框架。
- CherryPy – 一個極簡的 Python web 框架,服從 HTTP/1.1 協議且具有WSGI 線程池。
- TurboGears – 一個可以擴展爲全棧解決方案的微型框架。
- web.py – 一個 Python 的 web 框架,既簡單,又強大。
- web2py – 一個全棧 web 框架和平臺,專注於簡單易用。
- Tornado – 一個web 框架和異步網絡庫。
25、權限(允許或拒絕用戶訪問數據或功能的庫)
- Carteblanche – Module to align code with thoughts of users and designers. Also magically handles navigation and permissions.
- django-guardian – Django 1.2+ 實現了單個對象權限。
- django-rules – 一個小巧但是強大的應用,提供對象級別的權限管理,且不需要使用數據庫。
26、CMS(內容管理系統)
- 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。
27、電子商務(用於電子商務以及支付的框架和庫)
- 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 – 顯示貨幣格式以及它的數值。
28、RESTful API(用來開發RESTful APIs的庫)
1.Django
- django-rest-framework – 一個強大靈活的工具,用來構建 web API。
- django-tastypie – 爲Django 應用開發API。
- django-formapi – 爲 Django 的表單驗證,創建 JSON APIs 。
2.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 等驅動。
3.Pyramid
- cornice – 一個Pyramid 的 REST 框架 。
4.與框架無關的
- falcon – 一個用來建立雲 API 和 web app 後端的噶性能框架。
- sandman – 爲現存的數據庫驅動系統自動創建 REST APIs 。
- restless – 框架無關的 REST 框架 ,基於從 Tastypie 學到的知識。
- ripozo – 快速創建 REST/HATEOAS/Hypermedia APIs。
29、驗證(實現驗證方案的庫)
1.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 客戶端實現。
2.其他
- jose – JavaScript 對象簽名和加密草案的實現。
- PyJWT – JSON Web 令牌草案 01。
- python-jws – JSON Web 簽名草案 02 的實現。
- python-jwt – 一個用來生成和驗證 JSON Web 令牌的模塊。
30、模板引擎(模板生成和詞法解析的庫和工具)
- Jinja2 – 一個現代的,對設計師友好的模板引擎。
- Chameleon – 一個 HTML/XML 模板引擎。 模仿了 ZPT(Zope Page Templates), 進行了速度上的優化。
- Genshi – Python 模板工具,用以生成 web 感知的結果。
- Mako – Python 平臺的超高速輕量級模板。
31、Queue(處理事件以及任務隊列的庫)
- celery – 一個異步任務隊列/作業隊列,基於分佈式消息傳遞。
- huey – 小型多線程任務隊列。
- mrq – Mr. Queue -一個 Python 的分佈式 worker 任務隊列, 使用 Redis 和 gevent。
- rq – 簡單的 Python 作業隊列。
- simpleq – 一個簡單的,可無限擴張的,基於亞馬遜 SQS 的隊列。
32、搜索(對數據進行索引和執行搜索查詢的庫和軟件)
- django-haystack – Django 模塊化搜索。
- elasticsearch-py – Elasticsearch 的官方底層 Python 客戶端。
- elasticsearch-dsl-py -Elasticsearch 的官方高級 Python 客戶端。
- solrpy – solr的 Python 客戶端。
- Whoosh – 一個快速的純 Python 搜索引擎庫。
33、動態消息(用來創建用戶活動的庫)
- django-activity-stream – 從你的站點行爲中生成通用活動信息流。
- Stream-Framework – 使用 Cassandra 和 Redis 創建動態消息和通知系統。
34、資源(管理管理、壓縮、縮小網站資源的工具)
- 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。
35、緩存(緩存數據的庫)
- 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 封裝。
36、電子郵件(用來發送和解析電子郵件的庫)
- 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 庫,用來抽取信息和簽名。
37、國際化(用來進行國際化的庫)
- Babel – 一個Python 的國際化庫。
- Korean – 一個韓語詞態庫。
38、URL處理(解析URLs的庫)
- furl – 一個讓處理 URL 更簡單小型 Python 庫。
- purl – 一個簡單的,不可變的URL類,具有簡潔的 API 來進行詢問和處理。
- pyshorteners – 一個純 Python URL 縮短庫。
- shorturl- 生成短小 URL 和類似 http://bit.ly 短鏈的Python 實現。
- webargs – 一個解析 HTTP 請求參數的庫,內置對流行 web 框架的支持,包括 Flask, Django, Bottle, Tornado和 Pyramid。
39、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。
40、網絡站點爬取(爬取網絡站點的庫)
- Scrapy – 一個快速高級的屏幕爬取及網頁採集框架。
- cola – 一個分佈式爬蟲框架。
- Demiurge – 基於PyQuery 的爬蟲微型框架。
- feedparser – 通用 feed 解析器。
- Grab – 站點爬取框架。
- MechanicalSoup – 用於自動和網絡站點交互的 Python 庫。
- portia – Scrapy 可視化爬取。
- pyspider – 一個強大的爬蟲系統。
- RoboBrowser – 一個簡單的,Python 風格的庫,用來瀏覽網站,而不需要一個獨立安裝的瀏覽器。
42、網頁內容提取(用於進行網頁內容提取的庫)
- 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 等等。
43、表單(進行表單操作的庫)
- 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 數據。
44、數據驗證(數據驗證庫。多用於表單驗證)
- 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 等數據。
45、反垃圾技術(幫助你和電子垃圾進行戰鬥的庫)
- django-simple-captcha – 一個簡單、高度可定製的Django 應用,可以爲任何Django表單添加驗證碼。
- django-simple-spam-blocker- 一個用於Django的簡單的電子垃圾屏蔽工具。
46、標記(用來進行標記的庫)
- django-taggit – 簡單的 Django 標記工具。
47、管理面板(管理界面庫)
- Ajenti – 一個你的服務器值得擁有的管理面板。
- django-suit – Django 管理界面的一個替代品 (僅對於非商業用途是免費的)。
- django-xadmin – Django admin 的一個替代品,具有很多不錯的功能。
- flask-admin – 一個用於 Flask 的簡單可擴展的管理界面框架。
- flower – 一個對 Celery 集羣進行實時監控和提供 web 管理界面的工具。
- Grappelli – Django 管理界面的一個漂亮的皮膚。
- Wooey – 一個 Django 應用,可以爲 Python 腳本創建 web 用戶界面。
48、靜態站點生成器(靜態站點生成器是一個軟件,它把文本和模板作爲輸入,然後輸出HTML文件)
- Pelican – 使用 Markdown 或 ReST 來處理內容, Jinja 2 來製作主題。支持 DVCS, Disqus.。AGPL 許可。
- Cactus – 爲設計師設計的靜態站點生成器。
- Hyde – 基於 Jinja2 的靜態站點生成器。
- Nikola – 一個靜態網站和博客生成器。
- Tinkerer – Tinkerer 是一個博客引擎/靜態站點生成器,由Sphinx驅動。
- Lektor – 一個簡單易用的靜態 CMS 和博客引擎。
49、進程(操作系統進程啓動及通信庫)
- envoy – 比 Python subprocess 模塊更人性化。
- sarge – 另一 種 subprocess 模塊的封裝。
- sh – 一個完備的 subprocess 替代庫。
50、併發和並行(用以進行併發和並行操作的庫)
- multiprocessing – (Python 標準庫) 基於進程的“線程”接口。
- threading – (Python 標準庫)更高層的線程接口。
- eventlet – 支持 WSGI 的異步框架。
- gevent – 一個基於協程的 Python 網絡庫,使用greenlet。
- Tomorrow -用於產生異步代碼的神奇的裝飾器語法實現。
51、網絡(用於網絡編程的庫)
- asyncio – (Python 標準庫) 異步 I/O, 事件循環, 協程以及任務。
- Twisted – 一個事件驅動的網絡引擎。
- pulsar – 事件驅動的併發框架。
- diesel – 基於Greenlet 的事件 I/O 框架。
- pyzmq – 一個 ZeroMQ 消息庫的 Python 封裝。
- txZMQ – 基於 Twisted 的 ZeroMQ 消息庫的 Python 封裝。
52、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 客戶端和服務器庫。
53、WSGI 服務器(兼容 WSGI 的 web 服務器)
- gunicorn – Pre-forked, 部分是由 C 語言編寫的。
- uwsgi – uwsgi 項目的目的是開發一組全棧工具,用來建立託管服務, 由 C 語言編寫。
- bjoern – 異步,非常快速,由 C 語言編寫。
- fapws3 – 異步 (僅對於網絡端),由 C 語言編寫。
- meinheld – 異步,部分是由 C 語言編寫的。
- netius – 異步,非常快速。
- paste – 多線程,穩定,久經考驗。
- rocket – 多線程。
- waitress – 多線程, 是它驅動着 Pyramid 框架。
- Werkzeug – 一個 WSGI 工具庫,驅動着 Flask ,而且可以很方便大嵌入到你的項目中去。
54、RPC 服務器(兼容 RPC 的服務器)
- SimpleJSONRPCServer – 這個庫是 JSON-RPC 規範的一個實現。
- SimpleXMLRPCServer – (Python 標準庫) 簡單的 XML-RPC 服務器實現,單線程。
-
zeroRPC – zerorpc 是一個靈活的 RPC 實現,基於 ZeroMQ 和 MessagePack。
55、密碼學
- cryptography – 這個軟件包意在提供密碼學基本內容和方法提供給 Python 開發者。
- hashids – 在 Python 中實現 hashids 。
- Paramiko – SSHv2 協議的 Python (2.6+, 3.3+) ,提供客戶端和服務端的功能。
- Passlib – 安全密碼存儲/哈希庫,
- PyCrypto – Python 密碼學工具箱。
- PyNacl – 網絡和密碼學(NaCl) 庫的 Python 綁定。
56、圖形用戶界面(用來創建圖形用戶界面程序的庫)
- 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 技術進行界面的展示。
57、遊戲開發(超讚的遊戲開發庫)
- 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)引擎。
58、日誌(用來生成和操作日誌的庫)
- logging – (Python 標準庫) 爲 Python 提供日誌功能。
- logbook – Logging 庫的替代品。
- Eliot – 爲複雜的和分佈式系統創建日誌。
- Raven – Sentry的 Python 客戶端。
- Sentry – 實時記錄和收集日誌的服務器。
59、測試(進行代碼庫測試和生成測試數據的庫)
1.測試框架
- 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 – 一個通用的自動化測試框架。
2.Web 測試
- Selenium – Selenium WebDriver 的 Python 綁定。
- locust – 使用 Python 編寫的,可擴展的用戶加載測試工具。
- sixpack – 一個和語言無關的 A/B 測試框架。
- splinter – 開源的 web 應用測試工具。
3.Mock測試
- mock – (Python 標準庫) 一個用於僞造測試的庫。
- doublex – Python 的一個功能強大的 doubles 測試框架。
- freezegun – 通過僞造日期模塊來生成不同的時間。
- httmock – 針對 Python 2.6+ 和 3.2+ 生成 僞造請求的庫。
- httpretty – Python 的 HTTP 請求 mock 工具。
- responses – 僞造 Python 中的 requests 庫的一個通用庫。
- VCR.py – 在你的測試中記錄和重放 HTTP 交互。
4.對象工廠
- factoryboy – 一個 Python 用的測試固件 (test fixtures) 替代庫。
- mixer – 另外一個測試固件 (test fixtures) 替代庫,支持 Django, Flask, SQLAlchemy, Peewee 等。
- modelmommy – 爲 Django 測試創建隨機固件
5.代碼覆蓋率
- coverage – 代碼覆蓋率測量。
6.僞數據
- faker – 一個 Python 庫,用來生成僞數據。
- fake2db – 僞數據庫生成器。
- radar – 生成隨機的日期/時間。
7.錯誤處理
- FuckIt.py – FuckIt.py 使用最先進的技術來保證你的 Python 代碼無論對錯都能繼續運行。
60、代碼分析和Lint工具(進行代碼分析,解析和操作代碼庫的庫和工具)
1.代碼分析
- code2flow – 把你的 Python 和 JavaScript 代碼轉換爲流程圖。
- pycallgraph -這個庫可以把你的Python 應用的流程(調用圖)進行可視化。
- pysonar2 – Python 類型推斷和檢索工具。
2.Lint工具
- Flake8 – 模塊化源碼檢查工具: pep8, pyflakes 以及 co。
- Pylint – 一個完全可定製的源碼分析器。
- pylama – Python 和 JavaScript 的代碼審查工具。
61、調試工具(用來進行代碼調試的庫)
1.調試器
- 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 版。
2.性能分析器
- lineprofiler – 逐行性能分析。
- memoryprofiler – 監控 Python 代碼的內存使用。
- profiling – 一個交互式 Python 性能分析工具。
3.其他
- pyelftools – 解析和分析 ELF 文件以及 DWARF 調試信息。
- python-statsd – statsd 服務器的 Python 客戶端。
62、科學技術和數據分析(用來進行科學計算和數據分析的庫)
- 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 算法交易庫。
64、數據可視化(進行數據可視化的庫。 參見: 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 的高性能科學可視化工具。
65、計算機視覺(計算機視覺庫)
- OpenCV – 開源計算機視覺庫。
- SimpleCV – 一個用來創建計算機視覺應用的開源框架。
66、機器學習(機器學習庫。 參見: 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)。
67、MapReduce(MapReduce 框架和庫)
- dpark – Spark 的 Python 克隆版,一個類似 MapReduce 的框架。
- dumbo – 這個 Python 模塊可以讓人輕鬆的編寫和運行 Hadoop 程序。
- luigi – 這個模塊幫你構建批處理作業的複雜流水線。
- mrjob – 在 Hadoop 或 Amazon Web Services 上運行 MapReduce 任務。
- PySpark – Spark 的 Python API 。
- streamparse – 運行鍼對事實數據流的 Python 代碼。集成了Apache Storm。
68、函數式編程(使用 Python 進行函數式編程)
- CyToolz – Toolz 的 Cython 實現 : 高性能函數式工具。
- fn.py – 在 Python 中進行函數式編程 : 實現了一些享受函數式編程缺失的功能。
- funcy – 炫酷又實用的函數式工具。
- Toolz – 一組用於迭代器,函數和字典的函數式編程工具。
69、第三方 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 的封裝。
70、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 的進程控制系統。
71、任務調度(任務調度庫)
- APScheduler – 輕巧但強大的進程內任務調度,使你可以調度函數。
- django-schedule – 一個 Django 排程應用。
- doit – 一個任務執行和構建工具。
- gunnery – 分佈式系統使用的多用途任務執行工具 ,具有 web 交互界面。
- Joblib – 一組爲 Python 提供輕量級作業流水線的工具。
- Plan – 如有神助地編寫 crontab 文件。
- schedule – 人性化的 Python 任務調度庫。
- Spiff – 使用純 Python 實現的強大的工作流引擎。
- TaskFlow – 一個可以讓你方便執行任務的 Python 庫,一致並且可靠。
72、外來函數接口(使用外來函數接口的庫)
- cffi – 用來調用 C 代碼的外來函數接口。
- ctypes – (Python 標準庫) 用來調用 C 代碼的外來函數接口。
- PyCUDA – Nvidia CUDA API 的封裝。
- SWIG – 簡化的封裝和接口生成器。
73、高性能(讓 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。
74、微軟的 Windows平臺(在 Windows 平臺上進行 Python 編程)
- Python(x,y) – 面向科學應用的 Python 發行版,基於 Qt 和 Spyder。
- pythonlibs – 非官方的 Windows 平臺 Python 擴展二進制包。
- PythonNet – Python 與 .NET 公共語言運行庫 (CLR)的集成。
- PyWin32 – 針對 Windows 的Python 擴展。
- WinPython – Windows 7/8 系統下便攜式開發環境。
75、網絡可視化和SDN(用來進行網絡可視化和SDN(軟件定義網絡)的工具和庫)
- Mininet – 一款流行的網絡模擬器以及用 Python 編寫的 API。
- POX – 一個針對基於 Python 的軟件定義網絡應用(例如 OpenFlow SDN 控制器)的開源開發平臺。
- Pyretic – 火熱的 SDN 編程語言中的一員,爲網絡交換機和模擬器提供強大的抽象能力。
- SDX Platform – 基於 SDN 的 IXP 實現,影響了 Mininet, POX 和 Pyretic。
76、硬件(用來對硬件進行編程的庫)
- ino -操作Arduino的命令行工具。
- Pyro – Python 機器人編程庫。
- PyUserInput – 跨平臺的,控制鼠標和鍵盤的模塊。
- scapy – 一個非常棒的操作數據包的庫。
- wifi – 一個 Python 庫和命令行工具用來在 Linux 平臺上操作WiFi。
- Pingo – Pingo 爲類似Raspberry Pi,pcDuino, Intel Galileo等設備提供統一的API用以編程。
77、兼容性(幫助從 Python 2 向 Python 3遷移的庫)
- Python-Future – 這就是 Python 2 和 Python 3 之間丟失的那個兼容性層。
- Python-Modernize – 使 Python 代碼更加現代化以便最終遷移到 Python 3。
- Six – Python 2 和 3 的兼容性工具。
78、雜項(不屬於上面任何一個類別,但是非常有用的庫)
- blinker – 一個快速的 Python 進程內信號/事件分發系統。
- itsdangerous – 一系列輔助工具用來將可信的數據傳入不可信的環境。
- pluginbase – 一個簡單但是非常靈活的 Python 插件系統。
- Pychievements – 一個用來創建和追蹤成就的 Python 框架。
- Tryton – 一個通用商務框架。
79、算法和設計模式(Python 實現的算法和設計模式)
- algorithms -一個 Python 算法模塊
- python-patterns – Python 設計模式的集合。
- sortedcontainers – 快速,純 Python 實現的SortedList,SortedDict 和 SortedSet 類型。
80、編輯器插件(編輯器和 IDE 的插件)
1.Emacs
- Elpy – Emacs Python 開發環境。
2.Sublime Text
- SublimeJEDI – 一個 Sublime Text 插件,用來使用超讚的自動補全庫 Jedi。
- Anaconda – Anaconda 把你的 Sublime Text 3 變成一個功能齊全的 Python IDE。
3.Vim
- YouCompleteMe – 引入基於 Jedi 的 Python 自動補全引擎。
- Jedi-vim – 綁定 Vim 和 Jedi 自動補全庫對 Python 進行自動補全。
- Python-mode – 將 Vim 變成 Python IDE 的一款多合一插件。
4.Visual Studio
- PTVS – Visual Studio 的 Python 工具
5.Visual Studio Code
- 微軟 – Visual Studio Code的 Python 工具
81、集成開發環境(流行的 Python 集成開發環境)
- PyCharm – 商業化的 Python IDE ,由 JetBrains 開發。也有免費的社區版提供。
- LiClipse – 基於 Eclipse 的免費多語言 IDE 。使用 PyDev 來支持 Python 。
- Spyder – 開源 Python IDE。
82、服務(在線工具和簡化開發的 API )
持續集成
參見: awesome-CIandCD.
- Travis CI – 一個流行的工具,爲你的開源和私人項目提供持續集成服務。(僅支持 GitHub)
- CircleCI – 一個持續集成工具,可以非常快速的進行並行測試。 (僅支持 GitHub)
- Vexor CI – 一個爲私人 app 提供持續集成的工具,支持按分鐘付費。
- Wercker – 基於 Docker 平臺,用來構建和部署微服務。
代碼質量
- Codacy – 自動化代碼審查,更加快速的發佈高質量代碼。對於開源項目是免費的。
- QuantifiedCode – 一個數據驅動、自動、持續的代碼審查工具
上面是歸類好的,以下是待整理、待歸類。持續整理中......最後整理日期:2020-4-8
#、常用庫
Chardet字符編碼探測器,可以自動檢測文本、網頁、xml的編碼。
colorama主要用來給文本添加各種顏色,並且非常簡單易用。
Prettytable主要用於在終端或瀏覽器端構建格式化的輸出。
difflib,[Python]標準庫,計算文本差異
Levenshtein,快速計算字符串相似度。
fuzzywuzzy,字符串模糊匹配。
esmre,正則表達式的加速器。
shortuuid,一組簡潔URL/UUID函數庫。
ftfy,Unicode文本工具7
unidecode,ascii和Unicode文本轉換函數。
xpinyin,將漢字轉換爲拼音的函數庫
pangu.py,調整對中日韓文字當中的字母、數字間距。
pyfiglet,Python寫的figlet程序,使用字符組成ASCII藝術圖片
uniout,提取字符串中可讀寫的字符
awesome slugify,一個Python slugify庫,用於處理Unicode。
python-slugify,轉換Unicode爲ASCII內碼的slugify函數庫。
unicode-slugify,生成unicode內碼,Django的依賴包。
ply,Python版的lex和yacc的解析工具
phonenumbers,解析電話號碼,格式,存儲和驗證的國際電話號碼。
python-user-agents,瀏覽器的用戶代理(user-agents)的解析器。
sqlparse,SQL解析器。
pygments,一個通用的語法高亮工具。
python-nameparser,解析人名,分解爲單獨的成分。
pyparsing,通用解析器生成框架。
tablib,表格數據格式,包括,XLS、CSV,JSON,YAML。
python-docx,docx文檔讀取,查詢和修改,微軟Word 2007 / 2008的docx文件。
xlwt/xlrd,讀寫Excel格式的數據文件。
xlsxwriter,創建Excel格式的xlsx文件。
xlwings,利用Python調用Excel
csvkit,CSV文件工具包。
marmir,把Python[數據結構],轉化爲電子表格。
pdfminer,從PDF文件中提取信息。
pypdf2, 合併和轉換PDF頁面的函數庫。
Python-Markdown,輕量級標記語言Markdown的Python實現。
Mistune,,快速、全功能的純Python編寫的Markdown解釋器。
dateutil,標準的Python官方datetime模塊的擴展包,字符串日期工具,其中parser是根據字符串解析成datetime,而rrule是則是根據定義的規則來生成datetime。
arrow,更好的日期和時間處理Python庫
chronyk,一個Python 3版函數庫,用於解析人寫的時間和日期。
delorean,清理期時間的函數庫。
when.py,爲見的日期和時間,提供人性化的功能。
moment,類似Moment.js的日期/時間Python庫
pytz,世界時區,使用tz database時區信息[數據庫]
BeautifulSoup,基於Python的HTML/XML解析器,簡單易用, 功能很強大,即使是有bug,有問題的html代碼,也可以解析
lxml,快速,易用、靈活的HTML和XML處理庫,功能超強,在遇到有缺陷、不規範的xml時,Python自帶的xml處理器可能無法解析。報錯時,程序會嘗試再用lxml的修復模式解析。
htmlparser,官方版解析HTML DOM樹,偶爾搞搞命令行自動錶單提交用得上。
pyyaml,Python版本的YAML解釋器。
html5lib,-標準庫,解析和序列化HTML文檔和片段。
pyquery,類似[jQuery]的的HTML解釋器函數庫。
cssutils,Python CSS庫。
MarkupSafe,XML或HTML / XHTML安全字符串標記工具。
cssutils - ACSS library for Python., MarkupSafe - Implements a XML/HTML/XHTML
bleach,漂白,基於HTML的白名單函數庫。
xmltodict,類似JSON的XML工具包。
xhtml2pdf,HTML / CSS格式轉換器,看生成pdf文檔。
untangle,把XML文檔,轉換爲Python對象,方便訪問。
#、Python文件處理庫
庫名稱簡介Mimetypes,Python標準庫,映射文件名到MIME類型。
imghdr,Python標準庫,確定圖像類型。python-magic,libmagic文件類型識別庫,Python接口格式。path.py,os.path模塊的二次封裝。
watchdog,一組API和shell實用程序,用於監視文件系統事件。
Unipath,面向對象的文件/目錄的操作工具包。pathlib,-(Python 3.4版已經作爲Python標準庫),一個跨平臺,面向path的函數庫。
pickle/cPickle,python的pickle模塊實現了基本的數據序列和反序列化。通過pickle模塊的序列化操作我們能夠將程序中運行的對象信息保存到文件中去,永久存儲;通過pickle模塊的反序列化操作,我們能夠從文件中創建上一次程序保存的對象。
cPickle是[C語言]實現的版本,速度更快。
ConfigParser,Python標準庫,INI文件解析器。
configobj,INI文件解析器。config,分層次配置,logging作者編寫。
profig,多格式配置轉換工具。
logging,Python標準庫,日誌文件生成管理函數庫。
logbook,logging的替換品。
Sentry,實時log服務器。Raven,哨兵Sentry的Python客戶端。
Sphinx,斯芬克斯(獅身人面像),Python文檔生成器。
reStructuredText,標記語法和解析工具,Docutils組件。mkdocs,Markdown格式文檔生成器。
pycco,簡單快速、編程風格的文檔生成器。
pdoc,自動生成的Python庫API文檔epydoc,從源碼註釋中生成各種格式文檔的工具
#、Python圖像處理庫
庫名稱簡介PIL(Python
Image
Library),基於Python的圖像處理庫,功能強大,對圖形文件的格式支持廣泛,內置許多圖像處理函數,如圖像增強、濾波[算法]等Pillow,圖像處理庫,PIL圖像庫的分支和升級替代產品。Matplotlib,著名的繪圖庫,提供了整套和matlab相似的命令API,用以繪製一些高質量的數學二維圖形,十分適合交互式地進行製圖。brewer2mpl,有一個專業的python配色工具包,提供了從美術角度來講的精美配色。
PyGame基於Python的多媒體開發和遊戲軟件開發模塊,包含大量遊戲和圖像處理功能Box2d,開源的2d物理引擎,憤怒的小鳥就是使用了這款物理引擎進行開發的,Box2d物理引擎內部模擬了一個世界,你可以設置這個世界裏的重力,然後往這個世界裏添加各種物體,以及他們的一些物理特性,比如質量,摩擦,阻尼等等。
Pymunk,類似box2d的開源物理圖形模擬庫OpenCV,
目前最好的開源圖像/視覺庫,包括圖像處理和計算機視覺方面、[機器學習]的很多通用算法。SimpleCV,計算機視覺開源框架,類似opencv。VTK,視覺化工具函式庫(VTK,
Visualization
Toolkit)是一個開放源碼,跨平臺、支援平行處理(VTK曾用於處理大小近乎1個Petabyte的資料,其平臺爲美國Los
Alamos國家實驗室所有的具1024個處理器之大型系統)的圖形應用函式庫。
2005年時曾被美國陸軍研究實驗室用於即時模擬俄羅斯制反導彈戰車ZSU23-4受到平面波攻擊的情形,其計算節點高達2.5兆個之多。cgkit,Python Computer Graphics Kit,其module 主要分兩個部分,
1. 與3d相關的一些python module 例如the vector, matrix and quaternion types, the
RenderMan bindings, noise functions 這些模塊可以在maya houdini nuke blender
等有Python擴展的程序中直接用;
2. 提供完整的場景操作的module, 他類似其他三維軟件,在內存中保留完整的描述場景的信息。
不能直接用於maya 等CGAL,
Computational Geometry Algorithms Library,計算幾何算法庫,提供計算幾何相關的數據結構和算法,諸如三角剖分(2D約束三角剖分及二維和三維Delaunay三角剖分),
Voronoi圖(二維和三維的點,2D加權Voronoi圖,分割Voronoi圖等),
多邊形(布爾操作,偏置),多面體(布爾運算),曲線整理及其應用,
網格生成(二維Delaunay網格生成和三維表面和體積網格生成等),幾何處理(表面網格簡化,細分和參數化等),
凸殼算法(2D,3D和dD),搜索結構(近鄰搜索,kd樹等),插值,形狀分析,擬合,距離等。
Aggdraw,開源圖像庫,幾乎涵蓋了2d image操作的所有功能,使用起來非常靈活Pycairo,開源矢量繪圖庫Cairo開羅的python接口,
cairo提供在多個背景下做2-D的繪圖,高級的更可以使用硬件加速功能。wand,Python綁定魔杖工具(MagickWand),C語言API接口。
thumbor, -智能成像工具,可調整大小和翻轉圖像。
imgSeek,查詢相似的圖像。
python-qrcode,純Python的二維碼(QR碼)生成器。
pyBarcode,創建條碼,無需PIL模塊。
pygram,Instagram像圖像過濾器。
Quads,基於四叉樹的計算機藝術。
nude.py,裸體檢測函數。
scikit-image,scikit工具箱的圖像處理庫。
hmap,圖像直方圖工具。
bokeh,交互的Web繪圖。
plotly,Web協同的Python和Matplotlib繪製。
vincent,文森特,Python Vega的函數庫。
d3py,Python繪圖庫,基於D3.JS, ggplot -API兼容R語言的ggplot2.Kartograph.py,在Python繪製漂亮的SVG地圖。pygal, SVG圖表的創造者。
pygraphviz,Graphviz的Python接口。
Fonttlools,ttf字體工具函數包,用於fontforge、ttx等字體軟件。
#、Python遊戲和多媒體類庫
庫名稱簡介audiolazy,數字信號處理(DSP)的Python工具包。
audioread,跨平臺(GStreamer + Core Audio + MAD + FFmpeg)音頻解碼庫。
beets,音樂庫管理。
dejavu,音頻指紋識別算法。
Dejavu
聽一次音頻後就會記錄該音頻的指紋信息,然後可通過麥克風對輸入的音頻進行識別是否同一首歌。django-elastic-transcoder,Django
+亞馬遜elastic轉碼。eyeD3,音頻文件工具,特別是MP3文件包含的ID3元數據。
id3reader,用於讀取MP3的元數據。
mutagen,處理音頻元數據。
pydub,-操縱音頻和簡單的高層次的接口。
pyechonest,Echo Nest API客戶端。talkbox,語音和信號處理的Python庫。
TimeSide,開放的網絡音頻處理框架。
tinytag,讀取音樂文件元數據,包括的MP3,OGG,FLAC和wave文件。
m3u8,用於解析m3u8文件。
moviepy,多格式視頻編輯腳本模塊,包括GIF動畫。
shorten.tv,視頻摘要。
scikit視頻,SciPy視頻處理例程。
GeoDjango,一個世界級的地理Web框架。
geopy,Geo地理編碼的工具箱。
pygeoip,純Python寫的GeoIP API。
GeoIP,Python API接口,使用高精度GeoIP Legacy Database數據庫。
geojson,GeoJSON函數庫django-countries,一個Django程序,提供國家選擇,國旗圖標的靜態文件,和一個國家的地域模型。
Pygame,Python遊戲設計模塊。
Cocos2d,2D遊戲框架,演示,和其他的圖形/交互應用,基於pyglet。Cocos2d-
cocos2d is a framework for building 2D games, demos, and other
graphical/interactive applications. It is based on
pyglet.,PySDL2,SDL2的封裝庫。
Panda3D- 3D遊戲引擎,迪士尼開發。
用C++寫的,完全兼容Python。PyOgre,OGRE 3D渲染引擎,可用於遊戲,模擬,任何3D。
PyOpenGL,綁定OpenGL和它相關的API。
PySFML,Python綁定SFMLRenPy,視覺小說引擎。
#、大數據與科學計算
庫名稱簡介pycuda/opencl,GPU高性能併發計算Pandas,python實現的類似R語言的數據統計、分析平臺。基於NumPy和Matplotlib開發的,主要用於數據分析和數據可視化,它的數據結構DataFrame和R語言裏的data.frame很像,特別是對於時間序列數據有自己的一套分析機制,非常不錯。
Open Mining,商業智能(BI),Pandas的Web界面。blaze,NumPy和Pandas大數據界面。
SciPy,開源的Python算法庫和數學工具包,SciPy包含的模塊有最優化、線性代數、積分、插值、特殊函數、快速傅里葉變換、信號處理和圖像處理、常微分方程求解和其他科學與工程中常用的計算。
#、其功能與軟件MATLAB、Scilab和GNU Octave類似。
Numpy和Scipy常常結合着使用,Python大多數機器學習庫都依賴於這兩個模塊。
ScientificPython,一組經過挑選的Python程序模塊,用於科學計算,包括幾何學(矢量、張量、變換、矢量和張量場),四元數,自動求導數,(線性)插值,多項式,基礎統計學,非線性最小二乘擬合,單位計算,Fortran兼容的文本格式,通過VRML的3D顯示,以及兩個Tk小工具,分別用於繪製線圖和3D網格模型。
此外還具有到netCDF,MPI和BSPlib庫的接口。
NumPy科學計算庫,提供了矩陣,線性代數,傅立葉變換等等的解決方案, 最常用的是它的N維數組對象. NumPy提供了兩種基本的對象:
ndarray(N-dimensional array object)和 ufunc(universal function object)。
ndarray是存儲單一數據類型的多維數組,而ufunc則是能夠對數組進行處理的函數。
Cvxopt,最優化計算包,可進行線性規劃、二次規劃、半正定規劃等的計算。
Numba,科學計算速度優化編譯器。pymvpa2,是爲大數據集提供統計學習分析的Python工具包,它提供了一個靈活可擴展的框架。
它提供的功能有分類、迴歸、特徵選擇、數據導入導出、可視化等NetworkX,複雜網絡的優化軟件包。zipline,交易算法的函數庫。
#、PyDy, Python動態建模函數庫。
SymPy,符號數學的Python庫。statsmodels,Python的統計建模和計量經濟學。
astropy,天文學界的Python庫。
orange,橙色,數據挖掘,數據可視化,通過可視化編程或Python腳本學習機分析。
RDKit,化學信息學和機器學習的軟件。
Open Babel,巴貝爾,開放的化學工具箱。
cclib,化學軟件包的計算函數庫。
Biopython,免費的生物計算工具包。
bccb,生物分析相關的代碼集。bcbio-nextgen,提供完全自動化、高通量、測序分析的工具包。
visvis, 可視化計算模塊庫,可進行一維到四維數據的可視化。
MapReduce是Google提出的一個軟件[架構],用於大規模數據集(大於1TB)的並行運算。
概念“Map(映射)”和“Reduce(歸納)”,及他們的主要思想,都是從函數式編程語言借來的MapReduce函數庫。Framworks
and libraries for MapReduce.,PySpark,[Spark]的Python
API。dpark,Spark的Python克隆,Python中的MapReduce框架。luigi,爲批量工作,建立複雜的管道。mrjob,運行在[Hadoop],或亞馬遜網絡服務的,MapReduce工作。
#、人工智能與機器學習
庫名稱簡介NLTK(natural language toolkit),是python的自然語言處理工具包。2001年推出,包括了大量的詞料庫,以及自然語言處理方面的算法實現:
分詞, 詞根計算, 分類, 語義分析等。
Pattern,數據挖掘模塊,包括自然語言處理,機器學習工具,等等。
textblob,提供API爲自然語言處理、分解NLP任務。基於NLTK和Pattern模塊。
jieba,結巴,中文分詞工具。snownlp,用於處理中文文本庫。
loso,中文分詞函數庫。
genius,中文CRF基礎庫,條件隨機場(conditional
random field,簡稱
CRF),是一種鑑別式機率模型,是隨機場的一種,常用於標註或分析序列資料,如自然語言文字或是生物序列Gensim,一個相當專業的主題模型Python工具包,無論是代碼還是文檔,可用於如何計算兩個文檔的相似度LIBSVM,是臺灣大學林智仁(Lin
Chih-Jen)教授等開發設計的一個簡單、易於使用和快速有效的SVM模式識別與迴歸的軟件包,他不但提供了編譯好的可在Windows系列系統的執行文件,還提供了源代碼,方便改進、修改以及在其它[操作系統]上應用;
該軟件對SVM所涉及的參數調節相對比較少,提供了很多的默認參數,利用這些默認參數可以解決很多問題;
並提供了交互檢驗(Cross Validation)的功能。
該軟件可以解決C-SVM、ν-SVM、ε-SVR和ν-SVR等問題,包括基於一對一算法的多類模式識別問題。
scikits.learn,構建在SciPy之上用於機器學習的 Python 模塊。它包括簡單而高效的工具,可用於數據挖掘和數據分析。
涵蓋分類,迴歸和聚類算法,例如SVM, 邏輯迴歸,樸素貝葉斯,隨機森林,k-means等算法,代碼和文檔都非常不錯,在許多Python項目中都有應用。
例如在我們熟悉的NLTK中,分類器方面就有專門針對scikit-learn的接口,可以調用scikit-learn的分類算法以及訓練數據來訓練分類器模型。PyMC,機器學習採樣工具包,scikit-learn似乎是所有人的寵兒,有人認爲,PyMC更有魅力。
PyMC主要用來做Bayesian分析。Orange,基於組件的數據挖掘和機器學習軟件套裝,它的功能即友好,又很強大,快速而又多功能的可視化編程前端,以便瀏覽數據分析和可視化,包含了完整的一系列的組件以進行數據預處理,並提供了數據帳目,過渡,建模,模式評估和勘探的功能。
側重數據挖掘,可以用可視化語言或Python進行操作,擁有機器學習組件,還具有生物信息學以及文本挖掘的插件。
Milk,機器學習工具箱,其重點是提供監督分類法與幾種有效的分類分析:SVMs(基於libsvm),K-NN,隨機森林經濟和決策樹。
它還可以進行特徵選擇。這些分類可以在許多方面相結合,形成不同的分類系統。對於無監督學習,它提供K-means和affinity propagation聚類算法。
PyMVPA(Multivariate
Pattern Analysis in
Python),是爲大數據集提供統計學習分析的Python工具包,它提供了一個靈活可擴展的框架。它提供的功能有分類、迴歸、特徵選擇、數據導入導出、可視化等NuPIC,開源人工智能平臺。
該項目由Grok(原名 Numenta)公司開發,其中包括了公司的算法和軟件架構。
NuPIC 的運作接近於人腦,“當模式變化的時候,它會忘掉舊模式,記憶新模式”。如人腦一樣,CLA 算法能夠適應新的變化。Pylearn2,-基於Theano的機器學習庫。
hebel,GPU加速,[深度學習]Python庫。
gensim,機器學習庫。pybrain,機器學習模塊,它的目標是爲機器學習任務提供靈活、易應、強大的機器學習算法。
pybrain包括神經網絡、強化學習(及二者結合)、無監督學習、進化算法。以神經網絡爲核心,所有的訓練方法都以神經網絡爲一個實例Mahout,是
Apache Software Foundation(ASF)
旗下的一個開源項目,提供一些可擴展的機器學習領域經典算法的實現,旨在幫助開發人員更加方便快捷地創建智能應用程序。
Mahout包含許多實現,包括聚類、分類、推薦過濾、頻繁子項挖掘。此外,通過使用 Apache Hadoop 庫,Mahout 可以有效地擴展到雲中。
Crab,靈活的,快速的推薦引擎。python-recsys,娛樂系統分析,推薦系統。vowpal_porpoise,Vowpal Wabbit輕量級Python封裝。
Theano,用來定義、優化和模擬數學表達式計算,用於高效的解決多維數組的計算問題的python軟件包。它使得寫深度學習模型更加容易,同時也給出了一些關於在GPU上訓練它們的選項。
#、系統與命令行
庫名稱簡介threading,Python標準線程庫,更高級別的線程接口。
envoy,特使,Python子線程的函數庫。
sh,成熟的子線程替換函數庫。sarge,封裝線程。subprocess,調用shell命令的神器argparse,寫命令行腳本必備,強大的命令行差數解析工具timeit,計算代碼運行的時間等等unp,命令行工具,解壓文件。
eventlet開銷很少的多線程模塊,使用的是 green threads 概念,例如,pool = eventlet.GreenPool(10000) 這樣一條語句便創建了一個可以處理 10000 個客戶端連接的線程池。
類似Gevent線程庫Gevent,多線程模塊pytools,著名的python通用函數、工具包SendKeys, 鍵盤鼠標操作模塊, 模擬鍵盤鼠標模擬操作。
pyHook,基於Python的“鉤子”庫,主要用於監聽當前電腦上鼠標和鍵盤的事件。
這個庫依賴於另一個Python庫PyWin32,如同名字所顯示的,PyWin32只能運行在Windows平臺,所以PyHook也只能運行在Windows平臺。
pstuil,跨平臺地很方便獲取和控制系統的進程,以及讀取系統的CPU佔用內存佔用等信息.cement,一個輕量級的、功能齊全的命令行工具click,簡單優雅的的命令行接口。
clint,Python命令行工具。cliff,創造多層次指令的命令行程序框架。
Clime, 可以轉換任何模塊爲多的CLI命令程序,無任何配置。
docopt,Python命令行參數分析器。
pycli,命令行應用程序,支持的標準命令行解析,測井,單元[測試]和功能測試。
Gooey,打開命令行程序,作爲爲一個完整的GUI應用程序,cookiecutter,命令行工具,從cookiecutters(項目模板)創建項目。
例如,Python包項目,jQuery插件項目。
percol,爲UNIX傳統管道pipe命令,添加交互式選擇風格。
rainbowstream,聰明和漂亮的推特客戶終端。Django Models,Django的一部分SQLAlchemy,Python SQL工具包和對象關係映射。
peewee,小型的ORM解析器。
PonyORM,爲ORM提供了一種面向SQL的接口。MongoEngine,Python對象文件映射,使用[MongoDB]。
, Django MongoDB引擎MongoDB , Django後臺。
django-mongodb-engine,Django後臺.redisco,一個簡單的模型和容器庫,使用[Redis]flywheel,Amazon DynamoDB對象映射。
butterdb,谷歌電子表格的ORM,Python版。celery,芹菜,異步任務隊列/工作,基於分佈式消息隊列。
huey,休伊,輕量級,多線程任務隊列。
mrq,隊列先生,分佈式任務隊列,使用redis & Gevent。rq,簡單的工作隊列。
Queue,Queue模塊可以用來實現多線程間通訊,讓各個線程共享數據,生產者把貨物放到Queue中,供消費者(線程)去使用。
simpleq,簡單的,可擴展的隊列,Amazon SQS基礎隊列。
Psyco,超強的python性能優化工具,psyco 的神奇在於它只需要在代碼的入口處調用短短兩行代碼,性能就能提升 40% 或更多,真可謂是立竿見影!如果你的客戶覺得你的程序有點慢,敬請不要急着去優化代碼,psyco 或許能讓他立即改變看法。
psyco 堪稱 Python 的 jit。fn.py,Python函數編程:缺失的功能享受FP的實現。funcy,函數編程工具。
Toolz,函數編程工具:迭代器、函數,字典。CyToolz,Toolz的Cython實現,高性能的函數編程工具。Ansible,安塞波,極爲簡單的自動化平臺。
SaltStack,基礎設施的自動化管理系統。
Fabric,織物,一個簡單,遠程執行和部署的語言工具。
Fabtools,Fabric的工具函數。
cuisine,熱門的Fabric的工具函數。
psutil,跨平臺的過程和系統工具模塊。
pexpect,控制互動節目。
provy,易於使用的配置系統的Python。honcho,Foreman的Python接口,用於管理procfile應用工具。
gunnery,多任務執行工具,與網絡接口的分佈式系統。
fig,快速。獨立的開發環境中使用泊塢窗。
APScheduler,輕量級、但功能強大的在線任務調度程序。
django-schedule,Django日程應用程序。doit,任務流道/生成工具。
Joblib,Python提供的輕量級的流水線工具函數。
Plan,簡易生成crontab文件。
Spiff,純Python實現的,功能強大的工作流引擎。
schedule,Python作業調度。TaskFlow,有助於使任務執行簡單。
ctypes,Python標準庫,速度更快,Python調用C代碼的外部函數接口。cffi,Python調用C代碼外部函數接口,類似於ctypes直接在python程序中調用c程序,但是比ctypes更方便不要求編譯成so再調用。
Cytoolz,python 加速庫SWIG,簡化封裝和接口生成器。
,Cython,Python優化靜態編譯器。
PyPy,Python解釋器的 Python實現。
Stackless Python,一個增強版本的Python。它使程序員從基於線程的編程方式中獲得好處,並避免傳統線程所帶來的性能與複雜度問題。
Stackless爲 Python帶來的微線程擴展,是一種低開銷、輕量級的便利工具Pyston,使用LLVM和現代JIT技術,對python進行性能優化。
pythonlibs,非官方的Windows(32 / 64位)的Python擴展包scapy,優秀的數據包處理庫。
ino,Arduino命令行工具。Pyro,Python的機器人工具包。
pluginbase,一個簡單而靈活的Python的插件系統。
itsdangerous,數據安全傳輸工具。blinker,快速Python中的信號/事件調度系統。
pychievements,用於創建和跟蹤成果框架。
python-patterns,Python中的設計模式。
pefileWindows PE文件解析器SIP,自動爲C和C++庫生成Python擴展模塊的工具
#、數據庫
庫名稱簡介MySQLdb,成熟的[MySQL]數據庫模塊,Baresql,SQL數據庫包ZODB,Python本地對象數據庫。一個K-V對象圖數據庫。
pickledb,簡單和輕量級的K-V鍵值存儲。
TinyDB, 輕量級,面向文檔的數據庫。
mysql-python,MySQL的Python工具庫。
mysqlclient,mysql-python分支,支持Python
3.,PyMySQL,純Python寫的
MySQL驅動程序,兼容mysql-python。mysql-connector-python,MySQL連接器,來自[Oracle],純Python編寫。
oursql,MySQL連接器,提供本地話指令語句和BLOBs支持。
psycopg2,最流行的Python PostgreSQL適配器。txpostgres,於Twisted的異步驅動,用於PostgreSQL。
queries,psycopg2函數庫,用於PostgreSQL。
dataset,存儲Python字典數據,用於SQLite,MySQL和PostgreSQL。
cassandra-python-driver,開源分佈式NoSQL數據庫系統Apache Cassandra系統的Python驅動.pycassa,簡化的cassandra數據庫Python驅動。
HappyBase,友好的Apache [Hbase]的函數庫。
PyMongo,MongoDB官方客戶端。
Plyvel,LevelDB快速和功能豐富的Python接口。redis-py,redis客戶端。
py2neo,Python客戶端(基於Neo4j的RESTful接口).telephus,基於Twisted的cassandra客戶端。
txRedis,基於Twisted的Redis客戶端。
【網絡】Curl,Pycurl包是一個libcurl的Python接口,它是由C語言編寫的。
與urllib相比,它的速度要快很多。
Libcurl是一個支持FTP,
FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 和
LDAP的客戶端URL傳輸庫.libcurl也支持HTTPS認證,HTTP POST,HTTP
PUT,FTP上傳,代理,Cookies,基本身份驗證,FTP文件斷點繼傳,HTTP代理通道等等。
Requests,用Python語言編寫,基於 urllib的開源 HTTP 庫。
它比 urllib 更加方便,更加 Pythoner。
支持 Python3。httpie,命令行HTTP客戶端,用戶友好的cURL的替換工具。
s3cmd,命令行工具,用於管理Amazon S3和CloudFront。
youtube-dl,命令行程序,從YouTube下載視頻。
you-get,Python3寫的視頻下載工具,可用於YouTube/Youku優酷/Niconico視頻下載Coursera,從coursera.org下載視頻,可重新命名文件wikiteam,wiki下載工具。
subliminal,命令行工具,搜索和下載字幕的函數庫requests,HTTP函數庫,更加人性化。grequests,異步HTTP請求+ Gevent(高性能高併發函數庫)。
urllib3,一個線程安全的HTTP連接池,支持文件post。
httplib2,綜合HTTP的客戶端函數庫。treq, Python API接口,Twisted的HTTP客戶。
Mininet,流行的網絡仿真器,API採用python編寫。
POX,基於Python的開源軟件定義網絡(SDN)控制開發平臺的應用,如OpenFlow的SDN控制器。
Pyretic,SDN的編程語言,提供了強大的抽象在網絡交換機或仿真器。SDX
Platform,基於SDN的IXP實現,利用最小網絡,痘和熱。inbox.py,Python的SMTP服務器。imbox,
Python版本IMAP庫。inbox,收件箱,開源郵件工具包。
lamson,SMTP服務器。flanker,側衛,電子郵件地址和MIME解析庫。
marrow.mailer,高性能可擴展郵件交付框架。
django-celery-ses, Django電子郵件後臺,使用AWS SES和Celery。
modoboa,郵件託管和管理平臺,包括現代和簡化Web UI。
envelopes,郵件工具。
mailjet,批量郵寄mailjet API接口,帶統計。Talon,利爪,Mailgun庫,提取消息和簽名。
mailjet-
Mailjet API implementation for batch mailing, statistics and more.,
Talon - Mailgun library to extract message quotations and
signatures.,pyzmail,編寫,發送和解析電子郵件。
furl,燃料,小型的的URL解析庫庫。purl,簡單的,乾淨的API,操縱URL。
pyshorteners,純Python庫,URL短網址編輯。
short_url,短網址生成。
Scrapy,快速屏幕截取和網頁抓取的框架。
portia,波西亞,Scrapy的可視化擴展。
feedparser,信息源解釋器RoboBrowser,簡單的網頁瀏覽Python函數庫,沒有使用Web瀏覽器。
MechanicalSoup,網站自動化互動測試工具包。
mechanize,網頁瀏覽編程工具。
Demiurge,造物主,-PyQuery的輕量級工具。
newspaper,提取報紙新聞。html2text,轉換HTML爲 Markdown格式的文本。
python-goose,HTML內容提取器。
lassie,萊西,人性化的網站內容檢索。
micawber,通過UR抓提網頁的函數庫。
sumy,概要,文本和HTML網頁的自動文摘模塊。
Haul,距離,可擴展的圖像爬蟲。
python-readability,可讀性工具Arc90,快速的Python接口。
opengraph,OpenGraphProtocol協議解析模塊,textract,從任何文件,Word,PowerPoint,PDF文件中提取文本,等。
sanitize,消毒,使混亂的數據變的理智。
AutobahnPython,
WebSocket和WAMP的函數庫,使用
Twisted和PythonWebSocket-for-Python,websocket客戶端和服務器端函數庫。SimpleXMLRPCServer,python標準庫,簡單的XML-RPC服務器,單線程。
SimpleJSONRPCServer,JSON-RPC規範實施函數庫。
zeroRPC,基於ZeroMQ和MessagePack的RPC實現。
apache-libcloud,所有云服務的Python接口庫。
wifi,WiFi -一套個Python庫和命令行工具與WiFi,用於[Linux]。
streamparse,運行Python代碼和數據的實時流,集成了Apache Storm。
boto,亞馬遜網絡服務接口。
twython,Twitter推特API。google-api-python-client,谷歌客戶端API。
gspread,谷歌電子表格的Python API。
facebook-sdk,facebook平臺Python SDK。
facepy,簡易的facebook圖形APIgmail,Gmail的Python接口。
django-wordpress,Django的WordPress的模型和視圖。
Django,最流行的Python-Web框架,鼓勵快速開發,並遵循MVC設計,開發週期短ActiveGrid企業級的Web2.0解決方案Karrigell簡單的Web框架,自身包含了Web服務,py腳本引擎和純python的數據庫PyDBLitewebpy一個小巧靈活的Web框架,雖然簡單但是功能強大CherryPy基於Python的Web應用程序開發框架Pylons基於Python的一個極其高效和可靠的Web開發框架Zope開源的Web應用服務器TurboGears基於Python的MVC風格的Web應用程序框架Twisted流行的網絡編程庫,大型Web框架QuixoteWeb開發框架Flask,輕量級web框架Bottle,快速,簡單和輕量級的WSGI模式Web框架。
Pyramid,輕量級,快速,穩定的開源Web框架。
web2py,簡單易用的全堆棧Web框架和平臺。
web.py,強大、簡單的Web框架。TurboGears,便於擴展的Web框架。
CherryPy,極簡Python Web框架,支持,HTTP 1.1和WSGI線程池。
Grok,基於Zope3的Web框架。
Bluebream,開源的Web應用服務器,原名Zope 3。
guava,輕量級,高性能的Python-Web框架,採用c語言編寫。
django-cms,基於Django企業級開源CMS。
djedi-cms輕量級但功能強大的Django CMS的插件,內聯編輯和性能優化。
FeinCMS,基於Django的先進內容管理系統。
Kotte,高層次的Python的Web應用框架,基於Pyramid。Mezzanine,強大,一致,靈活的內容管理平臺。
Opps,基於Django的CMS,用於高流量的報紙、雜誌和門戶網站。
Plone,基於Zope的開源應用服務器Zope。
Quokka,靈活,可擴展的,輕量級的CMS系統,使用Flask和MongoDB。
Wagtail,Django內容管理系統。
Widgy,CMS框架,基於Django。
django-oscar,Django奧斯卡,開源的電子商務框架。
django-shop,基於Django的網店系統。
merchant,支持多種付款處理工具。
money,可擴展的貨幣兌換解決方案。
python-currencies,貨幣顯示格式。
cornice,Pyramid的REST框架。
django-rest-framework,Django框架,強大靈活的工具,可以很容易地構建Web API。
django-tastypie,創造精美的Django應用程序API接口。
django-formapi,創建JSON API、HMAC認證和Django表單驗證。flask-api,提供統一的瀏覽器體驗,基於Django框架。
flask-restful,快速構建REST API支持擴展。
flask-api-utils,flask的擴展。falcon,獵鷹,高性能的Python框架,構建雲API和Web應用程序後端。
eve,夏娃,REST API框架,使用Flask,MongoDB和良好意願。
sandman,睡魔,爲現有的數據庫驅動的系統,自動生成REST API。restless,類似TastyPie的框架。
savory-pie,REST API構建函數庫(Django,及其他)Jinja2,現代設計師友好的語言模板。
Genshi,網絡感知輸出模板工具包。
Mako,馬可,Python平臺的超高速、輕型模板。
Chameleon,變色龍,一個HTML / XML模板引擎。
仿照ZPT,優化速度。
Spitfire,快速的Python編譯模板。
django-haystack,大海撈針,Django模塊搜索。
elasticsearch-py,Elasticsearch官方低級的Python客戶端。
solrpy,solr客戶端。
Whoosh,呼,快速,純Python搜索引擎庫。
Feedly,建立新聞和通知系統的函數庫,使用Cassandra和Redis。
django-activity-stream,Django活動流,從你網站上的行動,產生通用的活動流。
Beaker,燒杯,一個緩存和會話使用的Web應用程序,獨立的Python腳本和應用程序庫。
dogpile.cache,是Beaker作者的下一代替代作品。HermesCache,Python的緩存庫,基於標籤的失效及預防Dogpile效果。
django-cache-machine,Django緩存機,自動緩存失效,使用ORM。django-cacheops,自動顆粒事件驅動,ORM緩存失效。johnny-cache,約翰尼高速緩存框架,Django應用程序。
django-viewlet,渲染模板部件擴展緩存控制。pylibmc,在libmemcached接口。
WTForms-JSON,JSON表單數據處理擴展。Deform, HTML表單生成的函數庫。
django-bootstrap3,bootstrap3,集成了Django。django-crispy-forms,Django程序,可以創建優雅的表單。django-remote-forms,Django的遠程表單,Django表格的序列化程序。
django-simple-spam-blocker,Django簡單的垃圾郵件攔截器。
django-simple-captcha,Django簡單驗證碼,簡單的和高度可定製的Django應用程序,用於添加驗證碼圖像Ajenti,服務器管理面板。
Grappelli,界面花哨的django皮膚。django-suit,Django替代o界面(僅用於非商業用途)。
django-xadmin,Django管理面板替代工具。
flask-admin,簡單的flask管理界面框架flower,實時監控和Web管理面板。
Pelican,鵜鶘,Markdown或ReST,字王內容主題。支持 DVCS, Disqus. AGPL。
Cactus,仙人掌,設計師的網站靜態生成器。
Hyde,海德, 基於Jinja2的靜態網站生成器。
Nikola,尼古拉-一個靜態網站和博客生成器。
Tags,標籤,最簡單的靜態網站生成器。
Tinkerer,工匠,基於Sphinx的靜態網站生成器。
asyncio,(在Python 3.4 +是Python標準庫),異步I/O,事件循環,協同任務。
gevent,基於Python的網絡庫。
Twisted,扭曲,事件驅動的網絡引擎。
Tornado,龍捲風,Web框架和異步網絡的函數庫。
pulsar,脈衝星,事件驅動的並行框架的Python。
diesel,柴油,綠色的,基於事件的I/O框架。
eventlet,WSGI支持異步框架。
pyzmq, 0MQ消息庫的Python封裝。
txZMQ,基於Twisted的0MQ消息庫封Crossbar,開源統一應用路由器(WebSocket和WAMP)。
wsgiref,Python標準庫,WSGI封裝實現,單線程。
Werkzeug,機牀,WSGI工具函數庫,很容易地嵌入到你自己的項目框架。
paste,粘貼,多線程,穩定的,久經考驗的WSGI工具。
rocket,火箭,多線程服務,基於Pyramid。
netius,快速的、異步WSGI服務器,gunicorn,forked前身,部分用C寫的。
fapws3,異步網絡,用C寫的。meinheld,異步WSGI服務器,是用C寫的。
bjoern,-快速的、異步WSGI服務器,用C寫的。
【安全】Permissions函數庫,允許或拒絕用戶訪問數據或函數。
django-guardian,Django守護者,管理每個對象的權限,用於Django 1.2 +Carteblanche,管理導航和權限。
Authomatic,簡單強大的認證/授權客戶端。
OAuthLib, 通用,規範,OAuth請求籤約工具。
rauth,用於OAuth 1.0,2.0,的Python庫。
python-oauth2,利用全面測試,抽象接口來創建OAuth的客戶端和服務器。
python-social-auth,易於安裝的社會認證機制。
,django-oauth-toolkit,Django OAuth工具包django-oauth2-provider,Django OAuth2工具包。
django-allauth,Django認證的應用程序。
Flask-OAuthlib,Flask的OAuth工具包sanction,制裁,簡單的oauth2客戶端。
jose,[JavaScript]對象簽名和加密(JOSE)草案實施,標記狀態。
python-jwt,JSON的Web令牌生成和驗證模塊。
pyjwt,JSON的Web令牌草案01。
python-jws,JSON的Web令牌草案02。
PyCrypto,Python的加密工具包。
Paramiko,sshv2協議的實現,提供了客戶端和服務器端的功能。
cryptography,密碼開發工具包。
PyNac,網絡和密碼(NaCl)函數庫。hashids,hashids的 Python函數庫。
Passlib,安全的密碼存儲/哈希庫,非常高的水平。
hashlib,md5, sha等hash算法,用來替換md5和sha模塊,並使他們的API一致。
它由OpenSSL支持,支持如下算法:md5,sha1, sha224, sha256, sha384, sha512.
PyGtk,基於Python的GUI程序開發GTK+庫
PyQt用於Python的QT開發庫
WxPythonPython下的GUI編程框架,其消息機制與MFC的架構相似,入門非常簡單,需要快速開發相關的應用可以使用這個
TkinterPython下標準的界面編程包,因此不算是第三方庫了
PySide,跨平臺Qt的應用程序和用戶界面框架,支撐Qt v4框架。
wxPython,混合wxWidgets的C++類庫。
kivy,創建應用程序GUI函數庫,看運行於Windows,Linux,MAC OS X,[Android]和[iOS]。
curse,用於創建終端GUI應用程序。
urwid,創建終端GUI應用程序窗體的函數庫,支持事件,色彩豐富。
pyglet,跨平臺的窗口和多媒體庫的Python。
Tkinter,是Python事實上的標準GUI軟件包。
enaml,創建漂亮的用戶界面,語法類似QML。
Toga,託加,OS原生GUI工具包。 【構建封裝】
pyenv,簡單的Python版本管理。
virtualenv,創建獨立的Python環境,用於同時安裝不同版本的python環境。
virtualenvwrapper,是virtualenv的一組擴展。
pew,一套管理多個虛擬環境的工具。
vex,使運行指定的virtualenv命令。
PyRun,一個單文件,無需安裝的Python版本管理工具。
PIP,Python包和依賴的管理工具。
easy_install,軟件包管理系統,提供一個標準的分配Python軟件和 函式庫的格式。是一個附帶設置工具的模塊,和一個第三方函式庫。旨在加快Python函式庫的分配程式的速度。類似Ruby語言的RubyGems 。
conda,跨平臺,二進制軟件包管理器。,
Curdling,一個管理Python包的命令行工具。
wheel,Python發行的新標準,旨在替代eggs.
cx-Freeze,跨平臺的,用於打包成可執行文件的庫
py2exe, Windows平臺的Freeze腳本工具,Py2exe ,將python腳本轉換爲windows上可以獨立運行的可執行程序
py2app,MAC OS X平臺的Freeze腳本工具
pyinstaller,-轉換成獨立的可執行文件的Python程序(跨平臺)。
pynsist,構建Windows安裝程序的工具,用Python編寫。
dh-virtualenv,建立和分發virtualenv(Debian軟件包格式)
PyPI,新一代的Python包庫管理工具。
warehouse,新一代的Python包庫(PyPI)管理工具。
devpi,PyPI服務器和包裝/測試/發佈工具。
localshop,PyPI官方包鏡像服務器,支持本地(私人)包上傳。
buildout,創建,組裝和部署應用程序的多個部分,其中一些可能是非基於Python的。
SCons,軟件構造工具。
platformio,一個控制檯的工具,構建的代碼可用於不同的開發平臺。
bitbake,特殊設計的工具,用於創建和部署[嵌入式]Linux軟件包
fabricate,自動爲任何編程語言,生成依賴包。
django-compressor,Django壓縮機,壓縮和內聯JavaScript或CSS,鏈接到一個單一的緩存文件。
jinja-assets-compressor,金賈壓縮機,一個Jinja擴展,通過編譯,壓縮你的資源。
webassets,優化管理,靜態資源,獨特的緩存清除。
fanstatic,球迷包優化,提供靜態文件。
fileconveyor,監控資源變化,,可保存到CDN(內容分發網絡)和文件系統。
django-storages,一組自定義存儲Django後臺。
glue,膠膠,一個簡單的命令行工具,生成CSS Sprites。
libsass-python,Sass (層疊樣式表)的Python接口。
Flask-Assets,整合應用程序資源。 【代碼調試】
unittest,Python標準庫,單元測試框架。
nose,鼻子,unittest延伸產品。
pytest,成熟的全功能的Python測試工具。
mamba,曼巴,Python的權威測試工具。出自BDD的旗下。
contexts,背景,BDD測試框架,基於C#。
pyshould,should風格的測試框架,基於PyHamcrest.
pyvows,BDD風格測試框架
Selenium,web測試框架,Python綁定Selenium。
splinter,分裂,測試Web應用程序的開源工具。
locust,刺槐,可擴展的用戶負載測試工具,用Python寫的。
sixpack,語言無關的A/B測試框架。
mock,模擬對象(英語:mock object,也譯作模仿對象),模擬測試庫。
responses,工具函數,用於mock模擬測試。
doublex-強大的測試框架。
freezegun,通過時間調整,測試模塊。
httpretty, HTTP請求的模擬工具。
httmock,mock模擬測試。
coverage,代碼覆蓋度量測試。
faker,生成模擬測試數據的Python包。
mixer,混頻器,產生模擬數據,用於Django ORM,SQLAlchemy,
Peewee, MongoEngine, Pony ORM等
model_mommy,在Django創建測試隨機工具。
ForgeryPy,易用的模擬數據發生器。
radar,雷達,生成隨機日期/時間。
FuckIt.py,測試Python代碼運行。
Code Analysispysonar2,Python類型索引。
pycallgraph,可視化的流量(調用圖)應用程序。
code2flow,轉換Python和JavaScript代碼到流程圖。
LinterFlake8,源代碼模塊檢查器
pylama,Python和JavaScript代碼審計工具。
Pylint,源代碼分析器,它查找編程錯誤,幫助執行一個代碼標準和嗅探一些代碼味道。注意:相比於PyChecker,Pylint是一個高階的Python代碼分析工具,它分析Python代碼中的錯誤。
Pyflakes,一個用於檢查Python源文件錯誤的簡單程序。Pyflakes分析程序並且檢查各種錯誤。它通過解析源文件實現,無需導入。
pdb,Python標準庫,Python調試器。
ipdb,IPython使用的PDB。
winpdb獨立於平臺的GUI調試器。
pudb,全屏,基於python調試控制檯。
pyringe,-可附着於及注入代碼到Python程序的調試器。
python-statsd,statsd服務器客戶端。
memory_profiler, 內存監視。
profiling,交互式Python分析器。
django-debug-toolbar, Django調試工具欄,顯示各種調試信息:當前請求/響應。
django-devserver,Django調試工具。
flask-debugtoolbar,flask調試工具。
#、模擬器類