Skip to content 跳到内容
Sign up 报名
vinta vinta
/
awesome-python awesome-python
Public 公共
A curated list of awesome Python frameworks, libraries, software and resources
一个令人敬畏的Python框架、库、软件和资源列表
awesome-python.com/ awesome-python.com/
View license 查看许可协议
124k 124 k stars 星星 21.1k 21.1 k forks 叉
Code
代码
Issues
7
问题 7
Pull requests
234
把请求 234年
Actions
行动
Security
安全
Insights
的见解
Latest commit 最新提交
@vinta
…
on 17 Dec 2021on 17 Dec 2021
Git stats Git统计数据
1624年 提交
Files 文件
README.md README.md
Awesome Python 很棒的PythonAwesome
A curated list of awesome Python frameworks, libraries, software and resources.
一个令人敬畏的Python框架、库、软件和资源列表。
Inspired by awesome-php.
灵感来自awesome-php。
Awesome Python 很棒的Python
Admin Panels 管理面板
Algorithms and Design Patterns 算法和设计模式
ASGI Servers ASGI服务器
Asynchronous Programming 异步编程
Audio 音频
Authentication 身份验证
Build Tools 构建工具
Built-in Classes Enhancement 内置类增强
缓存 缓存
ChatOps Tools ChatOps工具
CMS CMS
Code Analysis 代码分析
Command-line Interface Development 命令行界面开发
Command-line Tools 命令行工具
Compatibility 兼容性
Computer Vision 计算机视觉
Concurrency and Parallelism 并发和并行性
Configuration 配置
Cryptography 密码学
Data Analysis 数据分析
Data Validation 数据验证
Data Visualization 数据可视化
Database Drivers 数据库驱动程序
Database 数据库
Date and Time 日期和时间
Debugging Tools 调试工具
Deep Learning 深度学习
DevOps Tools DevOps的工具
Distributed Computing 分布式计算
Distribution 分布
Documentation 文档
Downloader 下载器
E-commerce 电子商务
Editor Plugins and IDEs 编辑器插件和ide
Email 电子邮件
Enterprise Application Integrations 企业应用程序集成
Environment Management 环境管理
Files 文件
Foreign Function Interface 外国函数接口
Forms 形式
Functional Programming 函数式编程
Game Development 游戏开发
Geolocation 地理位置
GUI Development GUI开发
Hardware 硬件
HTML Manipulation HTML操作
HTTP Clients HTTP客户端
Image Processing 图像处理
Implementations 实现
Interactive Interpreter 交互式解释器
Internationalization 国际化
Job Scheduler 作业调度器
Logging 日志记录
Machine Learning 机器学习
Miscellaneous 杂项
Natural Language Processing 自然语言处理
Network Virtualization 网络虚拟化
News Feed 新闻提要
ORM ORM
Package Management 包管理
Package Repositories 包存储库
Penetration testing 渗透测试
Permissions 权限
Processes 流程
Recommender Systems 推荐系统
Refactoring 重构
RESTful API RESTful API
Robotics 机器人
RPC Servers RPC服务器
Science 科学
Search 搜索
Serialization 序列化
Serverless Frameworks Serverless框架
Shell 壳牌
Specific Formats Processing 具体格式处理
Static Site Generator 静态网站生成器
Tagging 标签
Task Queues 任务队列
Template Engine 模板引擎
Testing 测试
Text Processing 文本处理
Third-party APIs 第三方api
URL Manipulation URL操作
Video 视频
Web Asset Management 网络资产管理
Web Content Extracting 网页内容提取
Web Crawling Web爬行
Web Frameworks Web框架
WebSocket WebSocket
WSGI Servers WSGI服务器
Resources 资源
Books 书
Newsletters 时事通讯
Podcasts 播客
Websites 网站
Contributing 贡献
Admin Panels 管理面板
Libraries for administrative interfaces.用于管理接口的库。
ajenti - The admin panel your servers deserve. ajenti -你的服务器应得的管理面板。
django-grappelli - A jazzy skin for the Django Admin-Interface. Django -grappelli - Django管理界面的jazzy皮肤。
django-jet - Modern responsive template for the Django admin interface with improved functionality. Django - Django管理界面的现代响应模板,改进了功能。
django-suit - Alternative Django Admin-Interface (free only for Non-commercial use). Django -suit -替代Django管理接口(仅供非商业使用)。
django-xadmin - Drop-in replacement of Django admin comes with lots of goodies. Django -xadmin——Django admin的替代品带来了很多好处。
flask-admin - Simple and extensible administrative interface framework for Flask. Flask -admin——简单且可扩展的Flask管理界面框架。
flower - Real-time monitor and web admin for Celery. 鲜花-实时监控和网页管理芹菜。
jet-bridge - Admin panel framework for any application with nice UI (ex Jet Django). Jet -bridge -管理面板框架,适用于任何具有漂亮UI的应用程序(前Jet Django)。
wooey - A Django app which creates automatic web UIs for Python scripts. 一个为Python脚本创建自动web ui的Django应用程序。
Algorithms and Design Patterns 算法和设计模式
Python implementation of data structures, algorithms and design patterns. Also see 数据结构、算法和设计模式的Python实现。也看到awesome-algorithms awesome-algorithms.
Algorithms 算法
algorithms - Minimal examples of data structures and algorithms. 数据结构和算法的最小示例。
python-ds - A collection of data structure and algorithms for coding interviews. python-ds -一组数据结构和算法,用于编写面试代码。
sortedcontainers - Fast and pure-Python implementation of sorted collections. sortedcontainers——排序集合的快速纯python实现。
TheAlgorithms - All Algorithms implemented in Python. TheAlgorithms -所有用Python实现的算法。
Design Patterns 设计模式
PyPattyrn - A simple yet effective library for implementing common design patterns. PyPattyrn——一个实现通用设计模式的简单而有效的库。
python-patterns - A collection of design patterns in Python. Python -patterns - Python中的设计模式集合。
transitions - A lightweight, object-oriented finite state machine implementation. 一个轻量级的、面向对象的有限状态机实现。
ASGI Servers ASGI服务器
ASGI ASGI-compatible web servers. 兼容web服务器。
daphne - A HTTP, HTTP2 and WebSocket protocol server for ASGI and ASGI-HTTP. 一个用于ASGI和ASGI-HTTP的HTTP, HTTP2和WebSocket协议服务器。
uvicorn - A lightning-fast ASGI server implementation, using uvloop and httptools. 一个闪电般的ASGI服务器实现,使用uvloop和httptools。
Asynchronous Programming 异步编程
asyncio asyncio - (Python standard library) Asynchronous I/O, event loop, coroutines and tasks. - (Python标准库)异步I/O,事件循环,协程和任务。
awesome-asyncio awesome-asyncio
trio - A friendly library for async concurrency and I/O. trio -一个用于异步并发和I/O的友好库。
Twisted - An event-driven networking engine. Twisted -事件驱动的网络引擎。
uvloop - Ultra fast asyncio event loop. uvloop -超快速asyncio事件循环。
Audio 音频
Libraries for manipulating audio and its metadata.用于操作音频及其元数据的库。
Audio 音频
audioread - Cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding. audioread -跨库(GStreamer + Core Audio + MAD + FFmpeg)音频解码。
dejavu - Audio fingerprinting and recognition. dejavu -音频指纹识别。
kapre - Keras Audio Preprocessors. kapre - Keras音频预处理器。
librosa - Python library for audio and music analysis. 用于音频和音乐分析的Python库。
matchering - A library for automated reference audio mastering. 一个自动参考音频掌握库。
mingus - An advanced music theory and notation package with MIDI file and playback support. mingus -一个先进的音乐理论和符号包与MIDI文件和回放支持。
pyAudioAnalysis - Audio feature extraction, classification, segmentation and applications. pyAudioAnalysis -音频特征提取,分类,分割和应用。
pydub - Manipulate audio with a simple and easy high level interface. pydub -操作音频与一个简单和容易的高水平界面。
TimeSide - Open web audio processing framework. 开放的web音频处理框架。
Metadata 元数据
beets - A music library manager and MusicBrainz tagger. 甜菜-一个音乐图书馆经理和MusicBrainz标签。
eyeD3 - A tool for working with audio files, specifically MP3 files containing ID3 metadata. eyeD3 -一个处理音频文件的工具,特别是包含ID3元数据的MP3文件。
mutagen - A Python module to handle audio metadata. mutagen -一个处理音频元数据的Python模块。
tinytag - A library for reading music meta data of MP3, OGG, FLAC and Wave files. 一个用于读取MP3, OGG, FLAC和Wave文件的音乐元数据的库。
Authentication 身份验证
Libraries for implementing authentications schemes.用于实现身份验证方案的库。
OAuth OAuth
authlib - JavaScript Object Signing and Encryption draft implementation. JavaScript对象签名和加密的草案实现。
django-allauth - Authentication app for Django that “just works.” Django -allauth - Django的认证应用程序,“只是工作”。
django-oauth-toolkit - OAuth 2 goodies for Django. Django - OAuth -toolkit - OAuth 2的优点。
oauthlib - A generic and thorough implementation of the OAuth request-signing logic. oauthlib——一个通用的、完整的OAuth请求签名逻辑实现。
python-oauth2 - A fully tested, abstract interface to creating OAuth clients and servers. python-oauth2 -一个经过全面测试的抽象接口,用于创建OAuth客户端和服务器。
python-social-auth - An easy-to-setup social authentication mechanism. python-social-auth -一个易于设置的社会认证机制。
JWT JWT
pyjwt - JSON Web Token implementation in Python. Python中JSON Web令牌的实现。
python-jose - A JOSE implementation in Python. 一个在Python中的JOSE实现。
python-jwt - A module for generating and verifying JSON Web Tokens. 一个用于生成和验证JSON Web令牌的模块。
Build Tools 构建工具
Compile software from source code.从源代码编译软件。
BitBake - A make-like build tool for embedded Linux. BitBake -一个类似嵌入式Linux的构建工具。
buildout - A build system for creating, assembling and deploying applications from multiple parts. 一个构建系统,用于从多个部分创建、组装和部署应用程序。
PlatformIO - A console tool to build code with different development platforms. 一个控制台工具,用于在不同的开发平台上构建代码。
pybuilder - A continuous build tool written in pure Python. pybuilder -一个用纯Python编写的连续构建工具。
SCons - A software construction tool. 一个软件构建工具。
Built-in Classes Enhancement 内置类增强
Libraries for enhancing Python built-in classes.用于增强Python内置类的库。
attrs attrs - Replacement for ——替代__init____init__, eq____eq, repr____repr, etc. boilerplate in class definitions. 等等的样板文件。
bidict - Efficient, Pythonic bidirectional map data structures and related functionality… 高效的,python的双向映射数据结构和相关功能。
Box - Python dictionaries with advanced dot notation access. 具有高级点表示法访问的Python字典。
dataclasses - (Python standard library) Data classes. datacclasses - (Python标准库)数据类。
DottedDict - A library that provides a method of accessing lists and dicts with a dotted path notation. DottedDict -一个库,提供了一种使用点路径表示法访问列表和字典的方法。
CMS CMS
Content Management Systems.内容管理系统。
django-cms - An Open source enterprise CMS based on the Django. Django - CMS——一个基于Django的开源企业CMS。
feincms - One of the most advanced Content Management Systems built on Django. 建立在Django上的最先进的内容管理系统之一。
indico - A feature-rich event management system, made @ CERN. 一个功能丰富的事件管理系统,制作@ CERN。
Kotti - A high-level, Pythonic web application framework built on Pyramid. 一个建立在金字塔上的高级python web应用程序框架。
mezzanine - A powerful, consistent, and flexible content management platform. mezzanine—强大、一致、灵活的内容管理平台。
plone - A CMS built on top of the open source application server Zope. 一个建立在开源应用服务器Zope之上的CMS。
quokka - Flexible, extensible, small CMS powered by Flask and MongoDB. quokka -灵活,可扩展,由Flask和MongoDB支持的小型CMS。
wagtail - A Django content management system. 一个Django内容管理系统。
Caching 缓存
Libraries for caching data.用于缓存数据的库。
beaker - A WSGI middleware for sessions and caching. beaker -一个用于会话和缓存的WSGI中间件。
django-cache-machine - Automatic caching and invalidation for Django models. Django -cache-machine——Django模型的自动缓存和失效。
django-cacheops - A slick ORM cache with automatic granular event-driven invalidation. django-cacheops——一个光滑的ORM缓存,带有自动粒度事件驱动的失效。
dogpile.cache - dogpile.cache is next generation replacement for Beaker made by same authors. dogpile。缓存——dogpile。cache是同一批作者研制的下一代烧杯的替代品。
HermesCache - Python caching library with tag-based invalidation and dogpile effect prevention. HermesCache -带有基于标签的失效和防止dogpile效应的Python缓存库。
pylibmc - A Python wrapper around the libmemcached interface. 一个围绕libmemcached接口的Python包装器。
python-diskcache - SQLite and file backed cache backend with faster lookups than memcached and redis. python-diskcache - SQLite和文件支持的缓存后端,比memcached和redis更快的查找。
ChatOps Tools ChatOps工具
Libraries for chatbot development.用于聊天机器人开发的库。
errbot - The easiest and most popular chatbot to implement ChatOps. 最简单和最流行的聊天机器人实现ChatOps。
Code Analysis 代码分析
Tools of static analysis, linters and code quality checkers. Also see 静态分析工具、绒毛和代码质量检查器。也看到awesome-static-analysis awesome-static-analysis.
Code Analysis 代码分析
coala - Language independent and easily extendable code analysis application. 独立于语言且易于扩展的代码分析应用程序。
code2flow - Turn your Python and JavaScript code into DOT flowcharts. code2flow -将你的Python和JavaScript代码转换成DOT流程图。
prospector - A tool to analyse Python code. 一个分析Python代码的工具。
pycallgraph - A library that visualises the flow (call graph) of your Python application. pycallgraph——一个可视化Python应用程序流(调用图)的库。
vulture - A tool for finding and analysing dead Python code. 一个用于查找和分析死Python代码的工具。
Code Linters 代码短绒
flake8 flake8 - A wrapper around -包装器pycodestylepycodestyle, pyflakespyflakes and McCabe. 麦凯布。
awesome-flake8-extensions awesome-flake8-extensions
pylama - A code audit tool for Python and JavaScript. pylama - Python和JavaScript的代码审计工具。
pylint - A fully customizable source code analyzer. 一个完全可定制的源代码分析器。
wemake-python-styleguide - The strictest and most opinionated python linter ever. wemake-python-styleguide -有史以来最严格和最固执己见的python linter。
Code Formatters 代码格式器
black - The uncompromising Python code formatter. black -不妥协的Python代码格式化器。
isort - A Python utility / library to sort imports. isort -用于对导入进行排序的Python实用程序/库。
yapf - Yet another Python code formatter from Google. yapf -来自谷歌的另一个Python代码格式化程序。
Static Type Checkers, also see 静态类型检查器,也请参见awesome-python-typing awesome-python-typing
mypy - Check variable types during compile time. mypy—在编译期间检查变量类型。
pyre-check - Performant type checking. 火堆检查-性能类型检查。
typeshed - Collection of library stubs for Python, with static types. typeshed - Python的带有静态类型的库存根集合。
Static Type Annotations Generators 静态类型注释生成器
MonkeyType - A system for Python that generates static type annotations by collecting runtime types. MonkeyType -一个通过收集运行时类型来生成静态类型注释的Python系统。
pyannotate - Auto-generate PEP-484 annotations. pyannotate—自动生成PEP-484注释。
pytype - Pytype checks and infers types for Python code - without requiring type annotations. pytype——pytype为Python代码检查和推断类型——不需要类型注释。
Command-line Interface Development 命令行界面开发
Libraries for building command-line applications.用于构建命令行应用程序的库。
Command-line Application Development 命令行应用程序开发
cement - CLI Application Framework for Python. 水泥- CLI应用框架的Python。
click - A package for creating beautiful command line interfaces in a composable way. 一个以可组合的方式创建漂亮命令行界面的包。
cliff - A framework for creating command-line programs with multi-level commands. cliff -一个用多级命令创建命令行程序的框架。
docopt - Pythonic command line arguments parser. docopt - python命令行参数解析器。
python-fire - A library for creating command line interfaces from absolutely any Python object. Python -fire -用于从任何Python对象创建命令行接口的库。
python-prompt-toolkit - A library for building powerful interactive command lines. python-prompt-toolkit -一个用于构建强大的交互式命令行的库。
Terminal Rendering 终端呈现
alive-progress - A new kind of Progress Bar, with real-time throughput, eta and very cool animations. alive-progress -一种新的进度条,具有实时吞吐量,eta和非常酷的动画。
asciimatics - A package to create full-screen text UIs (from interactive forms to ASCII animations). 一个用于创建全屏文本ui(从交互式表单到ASCII动画)的包。
bashplotlib - Making basic plots in the terminal. bashplotlib -在终端中绘制基本的图形。
colorama - Cross-platform colored terminal text. colorama -跨平台彩色终端文本。
rich 丰富的 - Python library for rich text and beautiful formatting in the terminal. Also provides a great - Python库的富文本和漂亮的格式在终端。也提供了一个RichHandlerRichHandler log handler. 日志处理程序。
tqdm - Fast, extensible progress bar for loops and CLI. tqdm -用于循环和CLI的快速、可扩展的进度条。
Command-line Tools 命令行工具
Useful CLI-based tools for productivity.用于提高工作效率的基于cli的工具。
Productivity Tools 生产力工具
copier - A library and command-line utility for rendering projects templates. copy -一个库和命令行工具,用于渲染项目模板。
cookiecutter - A command-line utility that creates projects from cookiecutters (project templates). cookiecutter——一个命令行实用工具,它可以从cookiecutter(项目模板)创建项目。
doitlive - A tool for live presentations in the terminal. doitlive -一个用于在终端进行现场演示的工具。
howdoi - Instant coding answers via the command line. howdoi -通过命令行进行即时编码。
Invoke - A tool for managing shell-oriented subprocesses and organizing executable Python code into CLI-invokable tasks. Invoke——用于管理面向shell的子流程,并将可执行的Python代码组织为cli可调用的任务的工具。
PathPicker - Select files out of bash output. PathPicker—从bash输出中选择文件。
percol - Adds flavor of interactive selection to the traditional pipe concept on UNIX. percol——在UNIX上为传统的管道概念增加了交互式选择功能。
thefuck - Correcting your previous console command. 纠正你之前的控制台命令。
tmuxp - A tmux session manager. tmuxp—tmux会话管理器。
try - A dead simple CLI to try out python packages - it’s never been easier. try -一个非常简单的CLI来尝试python包-从来没有这么简单过。
CLI Enhancements CLI增强
httpie - A command line HTTP client, a user-friendly cURL replacement. httpie—一个命令行HTTP客户机,用户友好的cURL替代品。
iredis - Redis CLI with autocompletion and syntax highlighting. 带有自动完成和语法高亮显示的Redis CLI。
kube-shell - An integrated shell for working with the Kubernetes CLI. kube-shell -一个集成的shell,用于与Kubernetes CLI一起工作。
litecli - SQLite CLI with autocompletion and syntax highlighting. litecli -带有自动完成和语法高亮显示的SQLite CLI。
mycli - MySQL CLI with autocompletion and syntax highlighting. mycli -带有自动完成和语法高亮显示的MySQL命令行。
pgcli - PostgreSQL CLI with autocompletion and syntax highlighting. pgcli -带有自动完成和语法高亮的PostgreSQL命令行。
saws - A Supercharged aws-cli. 电锯-增压aws-cli。
Compatibility 兼容性
Libraries for migrating from Python 2 to 3.用于从Python 2迁移到Python 3的库。
python-future - The missing compatibility layer between Python 2 and Python 3. Python -future - Python 2和Python 3之间缺少的兼容层。
modernize - Modernizes Python code for eventual Python 3 migration. 现代化Python代码,以最终迁移Python 3。
six - Python 2 and 3 compatibility utilities. 6 - Python 2和3兼容实用程序。
Computer Vision 计算机视觉
Libraries for Computer Vision.计算机视觉图书馆。
EasyOCR - Ready-to-use OCR with 40+ languages supported. EasyOCR -支持40多种语言的现成OCR。
Face Recognition - Simple facial recognition library. 简单的面部识别库。
Kornia - Open Source Differentiable Computer Vision Library for PyTorch. Kornia - PyTorch开源可微计算机视觉库。
OpenCV - Open Source Computer Vision Library. 开源计算机视觉库。
pytesseract - A wrapper for Google Tesseract OCR. pytesseract -谷歌Tesseract OCR的包装器。
SimpleCV - An open source framework for building computer vision applications. SimpleCV -一个用于构建计算机视觉应用程序的开源框架。
tesserocr tesserocr - Another simple, Pillow-friendly, wrapper around the -另一个简单的,枕头友好,包装周围tesseract-ocrtesseract-ocr API for OCR. OCR的API。
Concurrency and Parallelism 并发和并行性
Libraries for concurrent and parallel execution. Also see 用于并发和并行执行的库。也看到awesome-asyncio awesome-asyncio.
concurrent.futures - (Python standard library) A high-level interface for asynchronously executing callables. 并发。futures——(Python标准库)用于异步执行可调用对象的高级接口。
eventlet - Asynchronous framework with WSGI support. eventlet——支持WSGI的异步框架。
gevent - A coroutine-based Python networking library that uses greenlet. gevent -一个基于协程的Python网络库,使用greenlet。
multiprocessing - (Python standard library) Process-based parallelism. multiprocessing - (Python标准库)基于进程的并行性。
scoop - Scalable Concurrent Operations in Python. scoop - Python中可扩展的并发操作。
uvloop uvloop - Ultra fast implementation of -超快的实现asyncioasyncio event loop on top of 事件循环在顶部libuvlibuv.
Configuration 配置
Libraries for storing and parsing configuration options.用于存储和解析配置选项的库。
configobj - INI file parser with validation. 带有验证的INI文件解析器。
configparser - (Python standard library) INI file parser. configparser - (Python标准库)INI文件解析器。
hydra - Hydra is a framework for elegantly configuring complex applications. hydra - hydra是一个优雅配置复杂应用程序的框架。
profig - Config from multiple formats with value conversion. 配置从多个格式的值转换。
python-decouple - Strict separation of settings from code. python-解耦-设置与代码的严格分离。
Cryptography 密码学
cryptography - A package designed to expose cryptographic primitives and recipes to Python developers. cryptography——一个旨在向Python开发人员公开加密原语和秘方的包。
paramiko - The leading native Python SSHv2 protocol library. paramiko -领先的本地Python SSHv2协议库。
passlib - Secure password storage/hashing library, very high level. 安全的密码存储/哈希库,非常高的级别。
pynacl - Python binding to the Networking and Cryptography (NaCl) library. pynacl - Python绑定到网络和密码学(NaCl)库。
Data Analysis 数据分析
Libraries for data analyzing.用于数据分析的库。
AWS Data Wrangler - Pandas on AWS. AWS数据牧人- AWS上的熊猫。
Blaze - NumPy and Pandas interface to Big Data. Blaze - NumPy和Pandas与大数据的接口。
Open Mining - Business Intelligence (BI) in Pandas interface. 熊猫接口中的开放挖掘-商业智能(BI)。
Optimus - Agile Data Science Workflows made easy with PySpark. Optimus -使用PySpark使敏捷数据科学工作流变得容易。
Orange - Data mining, data visualization, analysis and machine learning through visual programming or scripts. 橙色-通过可视化编程或脚本进行数据挖掘、数据可视化、分析和机器学习。
Pandas - A library providing high-performance, easy-to-use data structures and data analysis tools. 一个提供高性能,易于使用的数据结构和数据分析工具的库。
Data Validation 数据验证
Libraries for validating data. Used for forms in many cases.用于验证数据的库。在许多情况下用于形式。
Cerberus - A lightweight and extensible data validation library. Cerberus -一个轻量级的可扩展的数据验证库。
colander - Validating and deserializing data obtained via XML, JSON, an HTML form post. 对通过XML、JSON、HTML表单post获得的数据进行验证和反序列化。
jsonschema - An implementation of JSON Schema for Python. 一个用于Python的JSON模式的实现。
schema - A library for validating Python data structures. schema——用于验证Python数据结构的库。
Schematics - Data Structure Validation. 原理图-数据结构验证。
valideer - Lightweight extensible data validation and adaptation library. valideer——轻量级可扩展的数据验证和适应库。
voluptuous - A Python data validation library. 一个Python数据验证库。
Data Visualization 数据可视化
Libraries for visualizing data. Also see 用于数据可视化的库。也看到awesome-javascript awesome-javascript.
Altair - Declarative statistical visualization library for Python. 用于Python的声明性统计可视化库。
Bokeh - Interactive Web Plotting for Python. Bokeh - Python的交互式Web绘图。
bqplot - Interactive Plotting Library for the Jupyter Notebook. 用于朱庇特笔记本的交互式绘图库。
Cartopy - A cartographic python library with matplotlib support. 一个支持matplotlib的绘图python库。
Dash 破折号 - Built on top of Flask, React and Plotly aimed at analytical web applications. 基于Flask, React和Plotly,针对分析性的web应用。
awesome-dash awesome-dash
diagrams - Diagram as Code. 图——作为代码的图。
Matplotlib - A Python 2D plotting library. Matplotlib -一个Python 2D绘图库。
plotnine - A grammar of graphics for Python based on ggplot2. plotnine -基于ggplot2的Python图形语法。
Pygal - A Python SVG Charts Creator. 一个Python SVG图表生成器。
PyGraphviz - Python interface to Graphviz. PyGraphviz - Graphviz的Python接口。
PyQtGraph - Interactive and realtime 2D/3D/Image plotting and science/engineering widgets. PyQtGraph -交互式和实时的2D/3D/图像绘图和科学/工程部件。
Seaborn - Statistical data visualization using Matplotlib. Seaborn -使用Matplotlib实现统计数据可视化。
VisPy - High-performance scientific visualization based on OpenGL. VisPy -基于OpenGL的高性能科学可视化。
Database 数据库
Databases implemented in Python.用Python实现的数据库。
pickleDB - A simple and lightweight key-value store for Python. pickleDB -一个简单且轻量级的Python键值存储。
tinydb - A tiny, document-oriented database. tinydb—一个小型的、面向文档的数据库。
ZODB - A native object database for Python. A key-value and object graph database. ZODB——Python的本地对象数据库。一个键值和对象图数据库。
Database Drivers 数据库驱动程序
Libraries for connecting and operating databases.用于连接和操作数据库的库。
MySQL - MySQL -awesome-mysql awesome-mysql
mysqlclient - MySQL connector with Python 3 support (mysql-python fork). mysqlclient -支持Python 3的MySQL连接器(MySQL - Python fork)。
PyMySQL - A pure Python MySQL driver compatible to mysql-python. 一个与MySQL - Python兼容的纯Python MySQL驱动程序。
PostgreSQL - PostgreSQL -awesome-postgres awesome-postgres
psycopg2 - The most popular PostgreSQL adapter for Python. psycopg2 - Python最流行的PostgreSQL适配器。
queries - A wrapper of the psycopg2 library for interacting with PostgreSQL. queries—用于与PostgreSQL交互的psycopg2库的包装器。
SQlite - SQlite -awesome-sqlite awesome-sqlite
sqlite3 - (Python standard library) SQlite interface compliant with DB-API 2.0 sqlite3 - (Python标准库)与DB-API 2.0兼容的SQlite接口
SuperSQLite - A supercharged SQLite library built on top of apsw. SuperSQLite -一个基于apsw的超级SQLite库。
Other Relational Databases 其他关系数据库
pymssql - A simple database interface to Microsoft SQL Server. pymssql -一个简单的数据库接口到Microsoft SQL Server。
clickhouse-driver - Python driver with native interface for ClickHouse. 带有ClickHouse本地接口的Python驱动程序。
NoSQL Databases NoSQL数据库
cassandra-driver - The Python Driver for Apache Cassandra. Cassandra - Driver - Apache Cassandra的Python驱动程序。
happybase - A developer-friendly library for Apache HBase. happybase -一个开发者友好的Apache HBase库。
kafka-python - The Python client for Apache Kafka. Kafka - Python - Apache Kafka的Python客户端。
py2neo - A client library and toolkit for working with Neo4j. py2neo -一个用于Neo4j的客户端库和工具包。
pymongo - The official Python client for MongoDB. pymongo - MongoDB的官方Python客户端。
redis-py - The Python client for Redis. Redis -py - Redis的Python客户端。
Asynchronous Clients 异步的客户
motor - The async Python driver for MongoDB. motor - MongoDB的异步Python驱动程序。
Date and Time 日期和时间
Libraries for working with dates and times.用于处理日期和时间的图书馆。
Arrow - A Python library that offers a sensible and human-friendly approach to creating, manipulating, formatting and converting dates, times and timestamps. Arrow -一个Python库,提供了一种合理且人性化的方法来创建、操作、格式化和转换日期、时间和时间戳。
Chronyk - A Python 3 library for parsing human-written times and dates. Chronyk -一个Python 3库,用于解析人类编写的时间和日期。
dateutil - Extensions to the standard Python datetime module. dateutil -对标准Python datetime模块的扩展。
delorean - A library for clearing up the inconvenient truths that arise dealing with datetimes. delorean -一个用来清理处理日期时间时令人不快的事实的图书馆。
maya - Datetimes for Humans. 玛雅-人类的日期时间。
moment - A Python library for dealing with dates/times. Inspired by Moment.js. moment -一个用于处理日期/时间的Python库。灵感来自Moment.js。
Pendulum - Python datetimes made easy. Pendulum -简化Python日期时间。
PyTime - An easy-to-use Python module which aims to operate date/time/datetime by string. PyTime -一个易于使用的Python模块,旨在通过字符串操作date/time/datetime。
pytz - World timezone definitions, modern and historical. Brings the tz database into Python. pytz -世界时区的定义,现代和历史的。将tz数据库引入Python。
when.py - Providing user-friendly functions to help perform common date and time actions. py -提供用户友好的函数来帮助执行常见的日期和时间操作。
Debugging Tools 调试工具
Libraries for debugging code.用于调试代码的库。
pdb-like Debugger pdb-like调试器
ipdb - IPython-enabled pdb. ipdb - IPython-enabled pdb。
pdb++ - Another drop-in replacement for pdb. pdb++ - pdb的另一个替代。
pudb - A full-screen, console-based Python debugger. pudb -一个全屏、基于控制台的Python调试器。
wdb - An improbable web debugger through WebSockets. wdb -一个不太可能通过WebSockets的web调试器。
Tracing 跟踪
lptrace - strace for Python programs. 用于Python程序的strace。
manhole - Debugging UNIX socket connections and present the stacktraces for all threads and an interactive prompt. 调试UNIX套接字连接,并显示所有线程的堆栈跟踪和一个交互式提示。
pyringe - Debugger capable of attaching to and injecting code into Python processes. pyringe——能够附加代码并将代码注入Python进程的调试器。
python-hunter - A flexible code tracing toolkit. 一个灵活的代码跟踪工具包。
Profiler 分析器
line_profiler - Line-by-line profiling. line_profiler—逐行分析。
memory_profiler - Monitor Memory usage of Python code. memory_profiler——监控Python代码的内存使用情况。
py-spy - A sampling profiler for Python programs. Written in Rust. py-spy - Python程序的采样分析器。写在生锈。
pyflame - A ptracing profiler For Python. pyflame -一个用于Python的ptracing分析器。
vprof - Visual Python profiler. vprof - Visual Python分析器。
Others 其他人
django-debug-toolbar - Display various debug information for Django. Django -debug-toolbar -显示Django的各种调试信息。
django-devserver - A drop-in replacement for Django’s runserver. Django -devserver——Django的runserver的临时替代品。
flask-debugtoolbar - A port of the django-debug-toolbar to flask. flask-debugtoolbar - django-debug-toolbar到flask的端口。
icecream - Inspect variables, expressions, and program execution with a single, simple function call. 用一个简单的函数调用检查变量、表达式和程序执行。
pyelftools - Parsing and analyzing ELF files and DWARF debugging information. pyelftools -解析和分析ELF文件和DWARF调试信息。
Deep Learning 深度学习
Frameworks for Neural Networks and Deep Learning. Also see 神经网络与深度学习框架。也看到awesome-deep-learning awesome-deep-learning.
caffe - A fast open framework for deep learning… 一个快速开放的深度学习框架…
keras - A high-level neural networks library and capable of running on top of either TensorFlow or Theano. keras -一个高级的神经网络库,可以运行在TensorFlow或Theano之上。
mxnet - A deep learning framework designed for both efficiency and flexibility. mxnet -一个为效率和灵活性而设计的深度学习框架。
pytorch - Tensors and Dynamic neural networks in Python with strong GPU acceleration. pytorch - Python中的张量和动态神经网络,具有强大的GPU加速功能。
SerpentAI - Game agent framework. Use any video game as a deep learning sandbox. 游戏代理框架。使用任何电子游戏作为深度学习沙盒。
tensorflow - The most popular Deep Learning framework created by Google. tensorflow -谷歌创建的最流行的深度学习框架。
Theano - A library for fast numerical computation. 一个用于快速数值计算的库。
DevOps Tools DevOps的工具
Software and libraries for DevOps.DevOps的软件和库。
Configuration Management 配置管理
ansible - A radically simple IT automation platform. ansible -一个非常简单的IT自动化平台。
cloudinit - A multi-distribution package that handles early initialization of a cloud instance. cloudit——一个多分发包,用于处理云实例的早期初始化。
OpenStack - Open source software for building private and public clouds. OpenStack—用于搭建私有云和公有云的开源软件。
pyinfra - A versatile CLI tools and python libraries to automate infrastructure. pyinfrastructure——一个通用的CLI工具和python库,用于自动化基础设施。
saltstack - Infrastructure automation and management system. 盐场-基础设施自动化和管理系统。
SSH-style Deployment SSH-style部署
cuisine - Chef-like functionality for Fabric. 烹饪-厨师样功能的织物。
fabric - A simple, Pythonic tool for remote execution and deployment. fabric——一个用于远程执行和部署的简单的python工具。
fabtools - Tools for writing awesome Fabric files. 用于编写出色的Fabric文件的工具。
Process Management 流程管理
honcho - A Python clone of Foreman, for managing Procfile-based applications. honcho - Foreman的Python克隆,用于管理基于procfile的应用程序。
supervisor - Supervisor process control system for UNIX. supervisor—用于UNIX的监控进程控制系统。
Monitoring 监控
psutil - A cross-platform process and system utilities module. 一个跨平台进程和系统实用程序模块。
Backup 备份
BorgBackup - A deduplicating archiver with compression and encryption. BorgBackup -一个压缩和加密的重复数据删除归档程序。
Others 其他人
docker-compose - Fast, isolated development environments using Docker. Docker -compose——使用Docker的快速、隔离的开发环境。
Distributed Computing 分布式计算
Frameworks and libraries for Distributed Computing.用于分布式计算的框架和库。
Batch Processing 批处理
dask - A flexible parallel computing library for analytic computing. dask -用于分析计算的灵活的并行计算库。
luigi - A module that helps you build complex pipelines of batch jobs. luigi -一个模块,可以帮助您构建复杂的批处理作业管道。
mrjob - Run MapReduce jobs on Hadoop or Amazon Web Services. mrjob—在Hadoop或Amazon Web Services上运行MapReduce任务。
PySpark - Apache Spark Python API. Apache Spark Python API。
Ray - A system for parallel and distributed Python that unifies the machine learning ecosystem. Ray -一个用于并行和分布式Python的系统,它统一了机器学习生态系统。
Stream Processing 流处理
faust - A stream processing library, porting the ideas from Kafka Streams to Python.
streamparse - Run Python code against real-time streams of data via Apache Storm.
Distribution
Libraries to create packaged executables for release distribution.
dh-virtualenv - Build and distribute a virtualenv as a Debian package.
Nuitka - Compile scripts, modules, packages to an executable or extension module.
py2app - Freezes Python scripts (Mac OS X).
py2exe - Freezes Python scripts (Windows).
pyarmor - A tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts.
PyInstaller - Converts Python programs into stand-alone executables (cross-platform).
pynsist - A tool to build Windows installers, installers bundle Python itself.
shiv - A command line utility for building fully self-contained zipapps (PEP 441), but with all their dependencies included.
Documentation
Libraries for generating project documentation.
sphinx - Python Documentation generator.
awesome-sphinxdoc
pdoc - Epydoc replacement to auto generate API documentation for Python libraries.
pycco - The literate-programming-style documentation generator.
Downloader
Libraries for downloading.
akshare - A financial data interface library, built for human beings!
s3cmd - A command line tool for managing Amazon S3 and CloudFront.
s4cmd - Super S3 command line tool, good for higher performance.
you-get - A YouTube/Youku/Niconico video downloader written in Python 3.
youtube-dl - A small command-line program to download videos from YouTube.
E-commerce
Frameworks and libraries for e-commerce and payments.
alipay - Unofficial Alipay API for Python.
Cartridge - A shopping cart app built using the Mezzanine.
django-oscar - An open-source e-commerce framework for Django.
django-shop - A Django based shop system.
forex-python - Foreign exchange rates, Bitcoin price index and currency conversion.
merchant - A Django app to accept payments from various payment processors.
money - Money class with optional CLDR-backed locale-aware formatting and an extensible currency exchange.
python-currencies - Display money format and its filthy currencies.
saleor - An e-commerce storefront for Django.
shoop - An open source E-Commerce platform based on Django.
Editor Plugins and IDEs
Emacs
elpy - Emacs Python Development Environment.
Sublime Text
anaconda - Anaconda turns your Sublime Text 3 in a full featured Python development IDE.
SublimeJEDI - A Sublime Text plugin to the awesome auto-complete library Jedi.
Vim
jedi-vim - Vim bindings for the Jedi auto-completion library for Python.
python-mode - An all in one plugin for turning Vim into a Python IDE.
YouCompleteMe - Includes Jedi-based completion engine for Python.
Visual Studio
PTVS - Python Tools for Visual Studio.
Visual Studio Code
Python - The official VSCode extension with rich support for Python.
IDE
PyCharm - Commercial Python IDE by JetBrains. Has free community edition available.
spyder - Open Source Python IDE.
Email
Libraries for sending and parsing email.
Mail Servers
modoboa - A mail hosting and management platform including a modern Web UI.
salmon - A Python Mail Server.
Clients
imbox - Python IMAP for Humans.
yagmail - Yet another Gmail/SMTP client.
Others
flanker - An email address and Mime parsing library.
mailer - High-performance extensible mail delivery framework.
Enterprise Application Integrations
Platforms and tools for systems integrations in enterprise environments
Zato - ESB, SOA, REST, APIs and Cloud Integrations in Python.
Environment Management
Libraries for Python version and virtual environment management.
pyenv - Simple Python version management.
virtualenv - A tool to create isolated Python environments.
Files
Libraries for file manipulation and MIME type detection.
mimetypes - (Python standard library) Map filenames to MIME types.
path.py - A module wrapper for os.path.
pathlib - (Python standard library) An cross-platform, object-oriented path library.
PyFilesystem2 - Python’s filesystem abstraction layer.
python-magic - A Python interface to the libmagic file type identification library.
Unipath - An object-oriented approach to file/directory operations.
watchdog - API and shell utilities to monitor file system events.
Foreign Function Interface
Libraries for providing foreign function interface.
cffi - Foreign Function Interface for Python calling C code.
ctypes - (Python standard library) Foreign Function Interface for Python calling C code.
PyCUDA - A Python wrapper for Nvidia’s CUDA API.
SWIG - Simplified Wrapper and Interface Generator.
Forms
Libraries for working with forms.
Deform - Python HTML form generation library influenced by the formish form generation library.
django-bootstrap3 - Bootstrap 3 integration with Django.
django-bootstrap4 - Bootstrap 4 integration with Django.
django-crispy-forms - A Django app which lets you create beautiful forms in a very elegant and DRY way.
django-remote-forms - A platform independent Django form serializer.
WTForms - A flexible forms validation and rendering library.
Functional Programming
Functional Programming with Python.
Coconut - A variant of Python built for simple, elegant, Pythonic functional programming.
CyToolz - Cython implementation of Toolz: High performance functional utilities.
fn.py - Functional programming in Python: implementation of missing features to enjoy FP.
funcy - A fancy and practical functional tools.
more-itertools - More routines for operating on iterables, beyond itertools.
returns - A set of type-safe monads, transformers, and composition utilities.
Toolz - A collection of functional utilities for iterators, functions, and dictionaries.
GUI Development
Libraries for working with graphical user interface applications.
curses - Built-in wrapper for ncurses used to create terminal GUI applications.
Eel - A library for making simple Electron-like offline HTML/JS GUI apps.
enaml - Creating beautiful user-interfaces with Declarative Syntax like QML.
Flexx - Flexx is a pure Python toolkit for creating GUI’s, that uses web technology for its rendering.
Gooey - Turn command line programs into a full GUI application with one line.
kivy - A library for creating NUI applications, running on Windows, Linux, Mac OS X, Android and iOS.
pyglet - A cross-platform windowing and multimedia library for Python.
PyGObject - Python Bindings for GLib/GObject/GIO/GTK+ (GTK+3).
PyQt - Python bindings for the Qt cross-platform application and UI framework.
PySimpleGUI - Wrapper for tkinter, Qt, WxPython and Remi.
pywebview - A lightweight cross-platform native wrapper around a webview component.
Tkinter - Tkinter is Python’s de-facto standard GUI package.
Toga - A Python native, OS native GUI toolkit.
urwid - A library for creating terminal GUI applications with strong support for widgets, events, rich colors, etc.
wxPython - A blending of the wxWidgets C++ class library with the Python.
DearPyGui - A Simple GPU accelerated Python GUI framework
GraphQL
Libraries for working with GraphQL.
graphene - GraphQL framework for Python.
tartiflette-aiohttp - An aiohttp-based wrapper for Tartiflette to expose GraphQL APIs over HTTP.
tartiflette-asgi - ASGI support for the Tartiflette GraphQL engine.
tartiflette - SDL-first GraphQL engine implementation for Python 3.6+ and asyncio.
Game Development
Awesome game development libraries.
Arcade - Arcade is a modern Python framework for crafting games with compelling graphics and sound.
Cocos2d - cocos2d is a framework for building 2D games, demos, and other graphical/interactive applications.
Harfang3D - Python framework for 3D, VR and game development.
Panda3D - 3D game engine developed by Disney.
Pygame - Pygame is a set of Python modules designed for writing games.
PyOgre - Python bindings for the Ogre 3D render engine, can be used for games, simulations, anything 3D.
PyOpenGL - Python ctypes bindings for OpenGL and it’s related APIs.
PySDL2 - A ctypes based wrapper for the SDL2 library.
RenPy - A Visual Novel engine.
Geolocation
Libraries for geocoding addresses and working with latitudes and longitudes.
django-countries - A Django app that provides a country field for models and forms.
GeoDjango - A world-class geographic web framework.
GeoIP - Python API for MaxMind GeoIP Legacy Database.
geojson - Python bindings and utilities for GeoJSON.
geopy - Python Geocoding Toolbox.
HTML Manipulation
Libraries for working with HTML and XML.
BeautifulSoup - Providing Pythonic idioms for iterating, searching, and modifying HTML or XML.
bleach - A whitelist-based HTML sanitization and text linkification library.
cssutils - A CSS library for Python.
html5lib - A standards-compliant library for parsing and serializing HTML documents and fragments.
lxml - A very fast, easy-to-use and versatile library for handling HTML and XML.
MarkupSafe - Implements a XML/HTML/XHTML Markup safe string for Python.
pyquery - A jQuery-like library for parsing HTML.
untangle - Converts XML documents to Python objects for easy access.
WeasyPrint - A visual rendering engine for HTML and CSS that can export to PDF.
xmldataset - Simple XML Parsing.
xmltodict - Working with XML feel like you are working with JSON.
HTTP Clients
Libraries for working with HTTP.
grequests - requests + gevent for asynchronous HTTP requests.
httplib2 - Comprehensive HTTP client library.
httpx - A next generation HTTP client for Python.
requests - HTTP Requests for Humans.
treq - Python requests like API built on top of Twisted’s HTTP client.
urllib3 - A HTTP library with thread-safe connection pooling, file post support, sanity friendly.
Hardware
Libraries for programming with hardware.
ino - Command line toolkit for working with Arduino.
keyboard - Hook and simulate global keyboard events on Windows and Linux.
mouse - Hook and simulate global mouse events on Windows and Linux.
Pingo - Pingo provides a uniform API to program devices like the Raspberry Pi, pcDuino, Intel Galileo, etc.
PyUserInput - A module for cross-platform control of the mouse and keyboard.
scapy - A brilliant packet manipulation library.
Image Processing
Libraries for manipulating images.
hmap - Image histogram remapping.
imgSeek - A project for searching a collection of images using visual similarity.
nude.py - Nudity detection.
pagan - Retro identicon (Avatar) generation based on input string and hash.
pillow - Pillow is the friendly PIL fork.
python-barcode - Create barcodes in Python with no extra dependencies.
pygram - Instagram-like image filters.
PyMatting - A library for alpha matting.
python-qrcode - A pure Python QR Code generator.
pywal - A tool that generates color schemes from images.
pyvips - A fast image processing library with low memory needs.
Quads - Computer art based on quadtrees.
scikit-image - A Python library for (scientific) image processing.
thumbor - A smart imaging service. It enables on-demand crop, re-sizing and flipping of images.
wand - Python bindings for MagickWand, C API for ImageMagick.
Implementations
Implementations of Python.
CLPython - Implementation of the Python programming language written in Common Lisp.
CPython - Default, most widely used implementation of the Python programming language written in C.
Cython - Optimizing Static Compiler for Python.
Grumpy - More compiler than interpreter as more powerful CPython2.7 replacement (alpha).
IronPython - Implementation of the Python programming language written in C#.
Jython - Implementation of Python programming language written in Java for the JVM.
MicroPython - A lean and efficient Python programming language implementation.
Numba - Python JIT compiler to LLVM aimed at scientific Python.
PeachPy - x86-64 assembler embedded in Python.
Pyjion - A JIT for Python based upon CoreCLR.
PyPy - A very fast and compliant implementation of the Python language.
Pyston - A Python implementation using JIT techniques.
Stackless Python - An enhanced version of the Python programming language.
Interactive Interpreter
Interactive Python interpreters (REPL).
bpython - A fancy interface to the Python interpreter.
Jupyter Notebook (IPython) - A rich toolkit to help you make the most out of using Python interactively.
awesome-jupyter
ptpython - Advanced Python REPL built on top of the python-prompt-toolkit.
Internationalization
Libraries for working with i18n.
Babel - An internationalization library for Python.
PyICU - A wrapper of International Components for Unicode C++ library (ICU).
Job Scheduler
Libraries for scheduling jobs.
Airflow - Airflow is a platform to programmatically author, schedule and monitor workflows.
APScheduler - A light but powerful in-process task scheduler that lets you schedule functions.
django-schedule - A calendaring app for Django.
doit - A task runner and build tool.
gunnery - Multipurpose task execution tool for distributed systems with web-based interface.
Joblib - A set of tools to provide lightweight pipelining in Python.
Plan - Writing crontab file in Python like a charm.
Prefect - A modern workflow orchestration framework that makes it easy to build, schedule and monitor robust data pipelines.
schedule - Python job scheduling for humans.
Spiff - A powerful workflow engine implemented in pure Python.
TaskFlow - A Python library that helps to make task execution easy, consistent and reliable.
Logging
Libraries for generating and working with logs.
logbook - Logging replacement for Python.
logging - (Python standard library) Logging facility for Python.
loguru - Library which aims to bring enjoyable logging in Python.
sentry-python - Sentry SDK for Python.
structlog - Structured logging made easy.
Machine Learning
Libraries for Machine Learning. Also see awesome-machine-learning.
gym - A toolkit for developing and comparing reinforcement learning algorithms.
H2O - Open Source Fast Scalable Machine Learning Platform.
Metrics - Machine learning evaluation metrics.
NuPIC - Numenta Platform for Intelligent Computing.
scikit-learn - The most popular Python library for Machine Learning.
Spark ML - Apache Spark’s scalable Machine Learning library.
vowpal_porpoise - A lightweight Python wrapper for Vowpal Wabbit.
xgboost - A scalable, portable, and distributed gradient boosting library.
MindsDB - MindsDB is an open source AI layer for existing databases that allows you to effortlessly develop, train and deploy state-of-the-art machine learning models using standard queries.
Microsoft Windows
Python programming on Microsoft Windows.
Python(x,y) - Scientific-applications-oriented Python Distribution based on Qt and Spyder.
pythonlibs - Unofficial Windows binaries for Python extension packages.
PythonNet - Python Integration with the .NET Common Language Runtime (CLR).
PyWin32 - Python Extensions for Windows.
WinPython - Portable development environment for Windows 7/8.
Miscellaneous
Useful libraries or tools that don’t fit in the categories above.
blinker - A fast Python in-process signal/event dispatching system.
boltons - A set of pure-Python utilities.
itsdangerous - Various helpers to pass trusted data to untrusted environments.
magenta - A tool to generate music and art using artificial intelligence.
pluginbase - A simple but flexible plugin system for Python.
tryton - A general purpose business framework.
Natural Language Processing
Libraries for working with human languages.
General
gensim - Topic Modeling for Humans.
langid.py - Stand-alone language identification system.
nltk - A leading platform for building Python programs to work with human language data.
pattern - A web mining module.
polyglot - Natural language pipeline supporting hundreds of languages.
pytext - A natural language modeling framework based on PyTorch.
PyTorch-NLP - A toolkit enabling rapid deep learning NLP prototyping for research.
spacy - A library for industrial-strength natural language processing in Python and Cython.
Stanza - The Stanford NLP Group’s official Python library, supporting 60+ languages.
Chinese
funNLP - A collection of tools and datasets for Chinese NLP.
jieba - The most popular Chinese text segmentation library.
pkuseg-python - A toolkit for Chinese word segmentation in various domains.
snownlp - A library for processing Chinese text.
Network Virtualization
Tools and libraries for Virtual Networking and SDN (Software Defined Networking).
mininet - A popular network emulator and API written in Python.
napalm - Cross-vendor API to manipulate network devices.
pox - A Python-based SDN control applications, such as OpenFlow SDN controllers.
News Feed
Libraries for building user’s activities.
django-activity-stream - Generating generic activity streams from the actions on your site.
Stream Framework - Building news feed and notification systems using Cassandra and Redis.
ORM
Libraries that implement Object-Relational Mapping or data mapping techniques.
Relational Databases
Django Models - The Django ORM.
SQLAlchemy - The Python SQL Toolkit and Object Relational Mapper.
awesome-sqlalchemy
dataset - Store Python dicts in a database - works with SQLite, MySQL, and PostgreSQL.
orator - The Orator ORM provides a simple yet beautiful ActiveRecord implementation.
orm - An async ORM.
peewee - A small, expressive ORM.
pony - ORM that provides a generator-oriented interface to SQL.
pydal - A pure Python Database Abstraction Layer.
NoSQL Databases
hot-redis - Rich Python data types for Redis.
mongoengine - A Python Object-Document-Mapper for working with MongoDB.
PynamoDB - A Pythonic interface for Amazon DynamoDB.
redisco - A Python Library for Simple Models and Containers Persisted in Redis.
Package Management
Libraries for package and dependency management.
pip - The package installer for Python.
pip-tools - A set of tools to keep your pinned Python dependencies fresh.
PyPI
conda - Cross-platform, Python-agnostic binary package manager.
poetry - Python dependency management and packaging made easy.
Package Repositories
Local PyPI repository server and proxies.
bandersnatch - PyPI mirroring tool provided by Python Packaging Authority (PyPA).
devpi - PyPI server and packaging/testing/release tool.
localshop - Local PyPI server (custom packages and auto-mirroring of pypi).
warehouse - Next generation Python Package Repository (PyPI).
Penetration Testing
Frameworks and tools for penetration testing.
fsociety - A Penetration testing framework.
setoolkit - A toolkit for social engineering.
sqlmap - Automatic SQL injection and database takeover tool.
Permissions
Libraries that allow or deny users access to data or functionality.
django-guardian - Implementation of per object permissions for Django 1.2+
django-rules - A tiny but powerful app providing object-level permissions to Django, without requiring a database.
Processes
Libraries for starting and communicating with OS processes.
delegator.py - Subprocesses for Humans 2.0.
sarge - Yet another wrapper for subprocess.
sh - A full-fledged subprocess replacement for Python.
Recommender Systems
Libraries for building recommender systems.
annoy - Approximate Nearest Neighbors in C++/Python optimized for memory usage.
fastFM - A library for Factorization Machines.
implicit - A fast Python implementation of collaborative filtering for implicit datasets.
libffm - A library for Field-aware Factorization Machine (FFM).
lightfm - A Python implementation of a number of popular recommendation algorithms.
spotlight - Deep recommender models using PyTorch.
Surprise - A scikit for building and analyzing recommender systems.
tensorrec - A Recommendation Engine Framework in TensorFlow.
Refactoring
Refactoring tools and libraries for Python
Bicycle Repair Man - Bicycle Repair Man, a refactoring tool for Python.
Bowler - Safe code refactoring for modern Python.
Rope - Rope is a python refactoring library.
RESTful API
Libraries for building RESTful APIs.
Django
django-rest-framework - A powerful and flexible toolkit to build web APIs.
django-tastypie - Creating delicious APIs for Django apps.
Flask
eve - REST API framework powered by Flask, MongoDB and good intentions.
flask-api - Browsable Web APIs for Flask.
flask-restful - Quickly building REST APIs for Flask.
Pyramid
cornice - A RESTful framework for Pyramid.
Framework agnostic
apistar - A smart Web API framework, designed for Python 3.
falcon - A high-performance framework for building cloud APIs and web app backends.
fastapi - A modern, fast, web framework for building APIs with Python 3.6+ based on standard Python type hints.
hug - A Python 3 framework for cleanly exposing APIs.
sandman2 - Automated REST APIs for existing database-driven systems.
sanic - A Python 3.6+ web server and web framework that’s written to go fast.
vibora - Fast, efficient and asynchronous Web framework inspired by Flask.
Robotics
Libraries for robotics.
PythonRobotics - This is a compilation of various robotics algorithms with visualizations.
rospy - This is a library for ROS (Robot Operating System).
RPC Servers
RPC-compatible servers.
RPyC (Remote Python Call) - A transparent and symmetric RPC library for Python
zeroRPC - zerorpc is a flexible RPC implementation based on ZeroMQ and MessagePack.
Science
Libraries for scientific computing. Also see Python-for-Scientists.
astropy - A community Python library for Astronomy.
bcbio-nextgen - Providing best-practice pipelines for fully automated high throughput sequencing analysis.
bccb - Collection of useful code related to biological analysis.
Biopython - Biopython is a set of freely available tools for biological computation.
cclib - A library for parsing and interpreting the results of computational chemistry packages.
Colour - Implementing a comprehensive number of colour theory transformations and algorithms.
Karate Club - Unsupervised machine learning toolbox for graph structured data.
NetworkX - A high-productivity software for complex networks.
NIPY - A collection of neuroimaging toolkits.
NumPy - A fundamental package for scientific computing with Python.
ObsPy - A Python toolbox for seismology.
Open Babel - A chemical toolbox designed to speak the many languages of chemical data.
PyDy - Short for Python Dynamics, used to assist with workflow in the modeling of dynamic motion.
PyMC - Markov Chain Monte Carlo sampling toolkit.
QuTiP - Quantum Toolbox in Python.
RDKit - Cheminformatics and Machine Learning Software.
SciPy - A Python-based ecosystem of open-source software for mathematics, science, and engineering.
SimPy - A process-based discrete-event simulation framework.
statsmodels - Statistical modeling and econometrics in Python.
SymPy - A Python library for symbolic mathematics.
Zipline - A Pythonic algorithmic trading library.
Search
Libraries and software for indexing and performing search queries on data.
django-haystack - Modular search for Django.
elasticsearch-dsl-py - The official high-level Python client for Elasticsearch.
elasticsearch-py - The official low-level Python client for Elasticsearch.
pysolr - A lightweight Python wrapper for Apache Solr.
whoosh - A fast, pure Python search engine library.
Serialization
Libraries for serializing complex data types
marshmallow - A lightweight library for converting complex objects to and from simple Python datatypes.
pysimdjson - A Python bindings for simdjson.
python-rapidjson - A Python wrapper around RapidJSON.
ultrajson - A fast JSON decoder and encoder written in C with Python bindings.
Serverless Frameworks
Frameworks for developing serverless Python code.
python-lambda - A toolkit for developing and deploying Python code in AWS Lambda.
Zappa - A tool for deploying WSGI applications on AWS Lambda and API Gateway.
Shell
Shells based on Python.
xonsh - A Python-powered, cross-platform, Unix-gazing shell language and command prompt.
Specific Formats Processing
Libraries for parsing and manipulating specific text formats.
General
tablib - A module for Tabular Datasets in XLS, CSV, JSON, YAML.
Office
docxtpl - Editing a docx document by jinja2 template
openpyxl - A library for reading and writing Excel 2010 xlsx/xlsm/xltx/xltm files.
pyexcel - Providing one API for reading, manipulating and writing csv, ods, xls, xlsx and xlsm files.
python-docx - Reads, queries and modifies Microsoft Word 2007/2008 docx files.
python-pptx - Python library for creating and updating PowerPoint (.pptx) files.
unoconv - Convert between any document format supported by LibreOffice/OpenOffice.
XlsxWriter - A Python module for creating Excel .xlsx files.
xlwings - A BSD-licensed library that makes it easy to call Python from Excel and vice versa.
xlwt / xlrd - Writing and reading data and formatting information from Excel files.
PDF
PDFMiner - A tool for extracting information from PDF documents.
PyPDF2 - A library capable of splitting, merging and transforming PDF pages.
ReportLab - Allowing Rapid creation of rich PDF documents.
Markdown
Mistune - Fastest and full featured pure Python parsers of Markdown.
Python-Markdown - A Python implementation of John Gruber’s Markdown.
YAML
PyYAML - YAML implementations for Python.
CSV
csvkit - Utilities for converting to and working with CSV.
Archive
unp - A command line tool that can unpack archives easily.
Static Site Generator
Static site generator is a software that takes some text + templates as input and produces HTML files on the output.
lektor - An easy to use static CMS and blog engine.
mkdocs - Markdown friendly documentation generator.
makesite - Simple, lightweight, and magic-free static site/blog generator (< 130 lines).
nikola - A static website and blog generator.
pelican - Static site generator that supports Markdown and reST syntax.
Tagging
Libraries for tagging items.
django-taggit - Simple tagging for Django.
Task Queues
Libraries for working with task queues.
celery - An asynchronous task queue/job queue based on distributed message passing.
dramatiq - A fast and reliable background task processing library for Python 3.
huey - Little multi-threaded task queue.
mrq - A distributed worker task queue in Python using Redis & gevent.
rq - Simple job queues for Python.
Template Engine
Libraries and tools for templating and lexing.
Genshi - Python templating toolkit for generation of web-aware output.
Jinja2 - A modern and designer friendly templating language.
Mako - Hyperfast and lightweight templating for the Python platform.
Testing
Libraries for testing codebases and generating test data.
Testing Frameworks
hypothesis - Hypothesis is an advanced Quickcheck style property based testing library.
nose2 - The successor to nose, based on `unittest2.
pytest - A mature full-featured Python testing tool.
Robot Framework - A generic test automation framework.
unittest - (Python standard library) Unit testing framework.
Test Runners
green - A clean, colorful test runner.
mamba - The definitive testing tool for Python. Born under the banner of BDD.
tox - Auto builds and tests distributions in multiple Python versions
GUI / Web Testing
locust - Scalable user load testing tool written in Python.
PyAutoGUI - PyAutoGUI is a cross-platform GUI automation Python module for human beings.
Schemathesis - A tool for automatic property-based testing of web applications built with Open API / Swagger specifications.
Selenium - Python bindings for Selenium WebDriver.
sixpack - A language-agnostic A/B Testing framework.
splinter - Open source tool for testing web applications.
Mock
doublex - Powerful test doubles framework for Python.
freezegun - Travel through time by mocking the datetime module.
httmock - A mocking library for requests for Python 2.6+ and 3.2+.
httpretty - HTTP request mock tool for Python.
mock - (Python standard library) A mocking and patching library.
mocket - A socket mock framework with gevent/asyncio/SSL support.
responses - A utility library for mocking out the requests Python library.
VCR.py - Record and replay HTTP interactions on your tests.
Object Factories
factory_boy - A test fixtures replacement for Python.
mixer - Another fixtures replacement. Supports Django, Flask, SQLAlchemy, Peewee and etc.
model_mommy - Creating random fixtures for testing in Django.
Code Coverage
coverage - Code coverage measurement.
Fake Data
fake2db - Fake database generator.
faker - A Python package that generates fake data.
mimesis - is a Python library that help you generate fake data.
radar - Generate random datetime / time.
Text Processing
Libraries for parsing and manipulating plain texts.
General
chardet - Python 2/3 compatible character encoding detector.
difflib - (Python standard library) Helpers for computing deltas.
ftfy - Makes Unicode text less broken and more consistent automagically.
fuzzywuzzy - Fuzzy String Matching.
Levenshtein - Fast computation of Levenshtein distance and string similarity.
pangu.py - Paranoid text spacing.
pyfiglet - An implementation of figlet written in Python.
pypinyin - Convert Chinese hanzi (漢字) to pinyin (拼音).
textdistance - Compute distance between sequences with 30+ algorithms.
unidecode - ASCII transliterations of Unicode text.
Slugify
awesome-slugify - A Python slugify library that can preserve unicode.
python-slugify - A Python slugify library that translates unicode to ASCII.
unicode-slugify - A slugifier that generates unicode slugs with Django as a dependency.
Unique identifiers
hashids - Implementation of hashids in Python.
shortuuid - A generator library for concise, unambiguous and URL-safe UUIDs.
Parser
ply - Implementation of lex and yacc parsing tools for Python.
pygments - A generic syntax highlighter.
pyparsing - A general purpose framework for generating parsers.
python-nameparser - Parsing human names into their individual components.
python-phonenumbers - Parsing, formatting, storing and validating international phone numbers.
python-user-agents - Browser user agent parser.
sqlparse - A non-validating SQL parser.
Third-party APIs
Libraries for accessing third party services APIs. Also see List of Python API Wrappers and Libraries.
apache-libcloud - One Python library for all clouds.
boto3 - Python interface to Amazon Web Services.
django-wordpress - WordPress models and views for Django.
facebook-sdk - Facebook Platform Python SDK.
google-api-python-client - Google APIs Client Library for Python.
gspread - Google Spreadsheets Python API.
twython - A Python wrapper for the Twitter API.
URL Manipulation
Libraries for parsing URLs.
furl - A small Python library that makes parsing and manipulating URLs easy.
purl - A simple, immutable URL class with a clean API for interrogation and manipulation.
pyshorteners - A pure Python URL shortening lib.
webargs - A friendly library for parsing HTTP request arguments with built-in support for popular web frameworks.
Video
Libraries for manipulating video and GIFs.
moviepy - A module for script-based movie editing with many formats, including animated GIFs.
scikit-video - Video processing routines for SciPy.
vidgear - Most Powerful multi-threaded Video Processing framework.
Web Asset Management
Tools for managing, compressing and minifying website assets.
django-compressor - Compresses linked and inline JavaScript or CSS into a single cached file.
django-pipeline - An asset packaging library for Django.
django-storages - A collection of custom storage back ends for Django.
fanstatic - Packages, optimizes, and serves static file dependencies as Python packages.
fileconveyor - A daemon to detect and sync files to CDNs, S3 and FTP.
flask-assets - Helps you integrate webassets into your Flask app.
webassets - Bundles, optimizes, and manages unique cache-busting URLs for static resources.
Web Content Extracting
Libraries for extracting web contents.
html2text - Convert HTML to Markdown-formatted text.
lassie - Web Content Retrieval for Humans.
micawber - A small library for extracting rich content from URLs.
newspaper - News extraction, article extraction and content curation in Python.
python-readability - Fast Python port of arc90’s readability tool.
requests-html - Pythonic HTML Parsing for Humans.
sumy - A module for automatic summarization of text documents and HTML pages.
textract - Extract text from any document, Word, PowerPoint, PDFs, etc.
toapi - Every web site provides APIs.
Web Crawling
Libraries to automate web scraping.
cola - A distributed crawling framework.
feedparser - Universal feed parser.
grab - Site scraping framework.
MechanicalSoup - A Python library for automating interaction with websites.
portia - Visual scraping for Scrapy.
pyspider - A powerful spider system.
robobrowser - A simple, Pythonic library for browsing the web without a standalone web browser.
scrapy - A fast high-level screen scraping and web crawling framework.
Web Frameworks
Traditional full stack web frameworks. Also see RESTful API.
Synchronous
Django - The most popular web framework in Python.
awesome-django
awesome-django
Flask - A microframework for Python.
awesome-flask
Pyramid - A small, fast, down-to-earth, open source Python web framework.
awesome-pyramid
Masonite - The modern and developer centric Python web framework.
Asynchronous
Tornado - A web framework and asynchronous networking library.
WebSocket
Libraries for working with WebSocket.
autobahn-python - WebSocket & WAMP for Python on Twisted and asyncio.
channels - Developer-friendly asynchrony for Django.
websockets - A library for building WebSocket servers and clients with a focus on correctness and simplicity.
WSGI Servers
WSGI-compatible web servers.
bjoern - Asynchronous, very fast and written in C.
gunicorn - Pre-forked, ported from Ruby’s Unicorn project.
uWSGI - A project aims at developing a full stack for building hosting services, written in C.
waitress - Multi-threaded, powers Pyramid.
werkzeug - A WSGI utility library for Python that powers Flask and can easily be embedded into your own projects.
Resources
Where to discover learning resources or new Python libraries.
Books
Fluent Python
Think Python
Websites
Tutorials
Full Stack Python
Python Cheatsheet
Real Python
The Hitchhiker’s Guide to Python
Ultimate Python study guide
Libraries
Awesome Python @LibHunt
Others
Python ZEEF
Pythonic News
What the f*ck Python!
Newsletters
Awesome Python Newsletter
Pycoder’s Weekly
Python Tricks
Python Weekly
Podcasts
Django Chat
Podcast.init
Python Bytes
Running in Production
Talk Python To Me
Test and Code
The Real Python Podcast
Contributing
Your contributions are always welcome! Please take a look at the contribution guidelines first.
I will keep some pull requests open if I’m not sure whether those libraries are awesome, you could vote for them by adding to them. Pull requests will be merged when their votes reach 20.
If you have any question about this opinionated list, do not hesitate to contact me @VintaChen on Twitter or open an issue on GitHub.
Contributors 393
@vinta
@traviscibot
@dhamaniasad
@vndmtrx
@ellisonleao
@ihebu
@Alir3z4
@nicoe
@quobit
@agroszer
@makrusak
Makefile
7.4%
© 2022 GitHub, Inc.
Terms
Privacy
Security
Status
Docs
Contact GitHub
Pricing
API
Training
Blog
About