AI 与智能体
用于构建 AI 应用、LLM 集成和自主智能体的库。
- hermes-agent - 一个随你成长的自适应个人 AI 助手。
- transformers - 用于文本、计算机视觉、音频、视频和多模态任务的预训练模型定义框架,支持推理和训练。
- langchain - 用于构建智能体和 LLM 驱动应用的框架。
- openai-whisper - 一个通用自动语音识别模型,在 68 万小时的多语言和多任务监督数据上训练。
- vllm - 一个高吞吐量、内存高效的 LLM 推理和服务引擎。
- unsloth - 更快速、更低内存的 LLM 微调,可作为 Python 库或桌面应用使用。
- mem0 - 一个用于 AI 智能体的智能记忆层,实现个性化交互。
- litellm - 使用 OpenAI 格式调用 100+ 个 LLM。
- crewai - 一个用于编排角色扮演自主 AI 智能体以协作解决任务的框架。
- scientific-agent-skills - 使用 scikit-learn、polars 和 biopython 等 Python 库进行科学研究和分析的智能体技能。
- llama-index - 一个用于在你的数据上构建 RAG 管道和智能体的工具包。
- langgraph - 用于构建有状态、长时间运行的 LLM 智能体的底层编排框架。
- AstrBot - 一个多平台 AI 助手,将 LLM 连接到 Telegram、Slack 和 QQ 等聊天应用,可通过 Python 插件扩展。
- wshobson-agents - 用于 AI 编码工具的插件、智能体和技能,包括用于测试、异步、打包和 uv 的 Python 技能。
- openviking - 一个用于 AI 智能体的上下文数据库,统一了记忆、资源和技能。
- dspy - 一个用于编程而非提示语言模型的框架。
- sglang - 用于大型语言模型和多模态模型的高性能服务框架。
- diffusers - 一个提供预训练扩散模型的库,用于生成和编辑图像、音频和视频。
- openai-agents - OpenAI 用于构建和管理 AI 智能体的框架。
- fastmcp - 一个高层级、Pythonic 的框架,用于构建 MCP 服务器和客户端。
- faster-whisper - Whisper 在 CTranslate2 上的重新实现,比 openai-whisper 快 4 倍,内存占用更少。
- mcp - 用于构建模型上下文协议服务器和客户端的官方 Python SDK。
- google-adk - Google 的代码优先工具包,用于构建、评估和部署 AI 智能体。
- peft - 用于大型预训练模型参数高效微调的库。
- funasr - 工业级语音识别工具包,支持说话人分离和情感检测。
- pydantic-ai - 一个 Python 智能体框架,用于构建具有结构化模式的生成式 AI 应用。
- trl - 一个用于使用 SFT、DPO、GRPO 和其他训练器对 transformer 语言模型进行后训练的库。
- sentence-transformers - 使用预训练和微调模型计算嵌入、运行检索并重排结果。
- instructor - 一个从 LLM 中提取结构化数据的库,由 Pydantic 驱动。
- semantica - 一个面向 AI 智能体的图原生上下文与知识层,具备推理、溯源和治理能力。
- axolotl - 一个用于微调和后训练大型语言模型的框架。
- llama-cpp-python - llama.cpp 的 Python 绑定,用于在本地运行 GGUF 模型。
- ollama - Ollama 的 Python 客户端,可在本地下载并运行开放权重 LLM。
- claude-agent-sdk - Anthropic 的 Python SDK,用于在 Claude Code 的 harness 上构建 AI 智能体——自定义工具、进程内 MCP 服务器、钩子。
- trailofbits-skills - 用于漏洞检测、审计和测试的安全技能。
- mlx-lm - 使用 MLX 在 Apple Silicon 上运行和微调大型语言模型。
- gTTS - 使用 Google Translate TTS 将文本转换为语音的 Python 库和 CLI 工具。
- sentry-skills - Sentry 团队用于代码审查、拉取请求和 Django 审查的智能体技能。
- django-ai-plugins - 面向 Django、DRF、Celery 及 Django 特定代码审查的 Django 后端智能体技能。
算法与设计模式
数据结构、算法和设计模式的 Python 实现。另见 awesome-algorithms。
- thealgorithms - 用 Python 实现的所有算法。
- python-patterns - Python 中的设计模式和惯用法集合。
- algorithms - 数据结构和算法的最小示例。
- sortedcontainers - 快速且纯 Python 实现的有序集合。
- python-statemachine - 具有声明式 API 的表达性状态图和有限状态机,支持同步和异步代码库。
深度学习
神经网络和深度学习框架。另见 awesome-deep-learning。
- tensorflow - 来自 Google 的端到端机器学习平台。
- pytorch - Python 中的张量和动态神经网络,具有强大的 GPU 加速。
- keras - 一个高级深度学习库,支持 JAX、TensorFlow 和 PyTorch 后端。
- jax - 一个用于高性能数值计算的库,支持自动微分和 JIT 编译。
- pytorch-lightning - 用于快速训练、部署和交付 AI 产品的深度学习框架。
- stable-baselines3 - Stable Baselines(深度)强化学习算法的 PyTorch 实现。
- gymnasium - 强化学习环境的标准 API,包含流行的参考环境(gym 的后继者)。
CLI 工具
实用的基于 CLI 的工具。
- yt-dlp - 用于从 YouTube 和其他视频网站下载视频的命令行程序,是 youtube-dl 的一个分支。
- httpie - 一个命令行 HTTP 客户端,是 cURL 的友好替代品。
- cookiecutter - 一个根据 cookiecutters(项目模板)创建项目的命令行工具。
- pgcli - 带有自动补全和语法高亮的 PostgreSQL CLI。
- mycli - 带有自动补全和语法高亮的 MySQL CLI。
- xonsh - 一个由 Python 驱动的 shell。功能齐全且跨平台。
- tmuxp - 一个 tmux 会话管理器。
- copier - 一个用于渲染项目模板的库和命令行工具。
- litecli - 带有自动补全和语法高亮的 SQLite CLI。
- iredis - 带有自动补全和语法高亮的 Redis CLI。
文件格式处理
用于解析和操作特定文件格式的库。
- markitdown - 用于将文件和办公文档转换为 Markdown 的 Python 工具。
- docling - 用于将文档转换为结构化数据的库。
- pymupdf - 一个基于 MuPDF 的快速库,用于提取、渲染和编辑 PDF 及其他文档格式。
- pypdf - 一个能够拆分、合并、裁剪和转换 PDF 页面的库。
- weasyprint - 一个 HTML 和 CSS 的可视化渲染引擎,可导出为 PDF。
- pdfminer.six - PDFMiner 的社区维护分支,用于从 PDF 文档中提取信息。
- python-docx - 创建、读取和更新 Microsoft Word (.docx) 文件。
- tablib - 用于 XLS、CSV、JSON、YAML 表格数据集的模块。
- markdown - John Gruber 的 Markdown 的 Python 实现。
- xlsxwriter - 用于创建 Excel .xlsx 文件的 Python 模块。
- python-pptx - 用于创建和更新 PowerPoint (.pptx) 文件的 Python 库。
- mistune - 一个快速且功能强大的 Python Markdown 解析器,带有渲染器和插件。
- pyyaml - 一个功能完备的 Python YAML 框架。
- pyelftools - 解析和分析 ELF 文件及 DWARF 调试信息。
- markdown-it-py - 支持 100% CommonMark、扩展和语法插件的 Markdown 解析器。
- pypandoc - pandoc(通用文档转换器)的一个轻量封装。
- openpyxl - 用于读写 Excel 2010 xlsx/xlsm/xltx/xltm 文件的库。
- reportlab - 一个用于生成 PDF 和图形的开源库。
- tomllib - (Python 标准库)解析 TOML 文件。
数据可视化
用于可视化数据的库。另见awesome-javascript。
- graphify - 将任何代码文件夹、SQL模式、文档、论文、图片或视频转换为可查询的知识图谱。
- streamlit - 一个框架,让你在几分钟内构建仪表板、生成报告或创建聊天应用。
- gradio - 使用 Python 构建和分享机器学习应用。
- dash - 一个基于Plotly、用纯Python构建数据应用和仪表板的框架。
- matplotlib - 用于创建静态、动画和交互式可视化的综合库。
- bokeh - Python交互式Web绘图。
- plotly - Python 的交互式绘图库。
- seaborn - 使用 Matplotlib 进行统计数据可视化。
- altair - Python 的声明式统计可视化库。
- graphviz - 用于创建和渲染Graphviz图的简单Python接口。
- cartopy - 一个支持 matplotlib 的制图 Python 库。
网页抓取
用于自动化网络爬取和提取网页内容的库。
- browser-use - 通过简单的浏览器自动化,让网站对 AI 智能体可用。
- scrapling - 一个自适应抓取框架,其选择器在页面变化后重新定位元素,并带有隐身抓取器和爬虫。
- crawl4ai - 一个开源、对 LLM 友好的网络爬虫,提供闪电般的结构化数据提取,专为 AI 智能体设计。
- scrapy - 一个快速的高层网络爬取和抓取框架。
- stagehand - 一个快速且 token 高效的浏览器自动化 SDK,用于提取数据并在网页上执行自愈操作。
- trafilatura - 一个从网络收集文本和元数据的工具,内置内容过滤功能。
- feedparser - 通用 feed 解析器。
- markdownify - 将 HTML 转换为 Markdown,支持自定义标签处理。
Web API
用于构建 RESTful、GraphQL 和 RPC API 的库。
- fastapi - 一个现代、快速的 Web 框架,使用标准 Python 类型提示构建 API。
- grpcio - 基于 HTTP/2 的 RPC 框架,提供 Python 绑定,由 Google 构建。
- django-rest-framework - 一个强大且灵活的工具包,用于构建 Web API。
- django-ninja - 基于类型提示和 Pydantic 的快速 Django REST 框架。
- strawberry - 一个利用 Python 类型注解定义 schema 的 GraphQL 库。
- connexion - 一个规范优先的框架,根据你的 OpenAPI 规范自动处理请求。
- flask-restx - 功能齐全的框架,用于使用 Flask 进行快速、简单且文档化的 API 开发。
- django-modern-rest - 现代 REST,具备速度、类型、异步、
msgspec、pydantic等特性。 - apiflask - 基于 Flask 的轻量级 Python Web API 框架,支持 marshmallow 模式和 Pydantic 模型。
- flask-smorest - 基于 Flask/Marshmallow 的 REST API 框架,自动生成 OpenAPI 文档。
- strawberry-django - Strawberry GraphQL 与 Django 的集成。
渗透测试
用于渗透测试的框架和工具。
- sherlock-project - 通过用户名在社交网络中搜索社交媒体账户。
- mitmproxy - 一个交互式支持 TLS 的拦截 HTTP 代理,适用于渗透测试人员和软件开发人员。
- sqlmap - 自动 SQL 注入和数据库接管工具。
- impacket - 一组用于处理网络协议的 Python 类,广泛用于 Windows 和 Active Directory 测试。
- pwntools - 一个 CTF 框架和漏洞利用开发库。
Web 框架
传统的全栈 Web 框架。另见 Web API。
- django - 一个鼓励快速开发并采用简洁、实用设计的高级 Web 框架。
- flask - Python 的微框架。
- reflex - 一个完全使用 Python 构建响应式全栈 Web 应用的框架。
- tornado - 一个 Web 框架和异步网络库。
- awesome-flask
- starlette - 一个轻量级 ASGI 框架和工具包,用于构建高性能异步服务。
- awesome-django
- bottle - 一个快速、简单的微框架,以单个文件分发,无依赖。
- litestar - 生产就绪、功能强大且可扩展的 ASGI Web 框架。
- fasthtml - 创建 HTML 应用的最快方式。
- pyramid - 一个小巧、快速、务实、开源的 Python Web 框架。
ORM
实现对象关系映射或数据映射技术的库。
- django.db.models - (Django 的一部分)Django ORM。
- sqlmodel - SQLModel 基于 Python 类型注解,由 Pydantic 和 SQLAlchemy 驱动。
- sqlalchemy - Python SQL 工具包和对象关系映射器。
- peewee - 一个小巧、富有表现力的 ORM。
- mongoengine - 用于处理 MongoDB 的 Python 对象-文档映射器。
- awesome-sqlalchemy
- beanie - 一个用于 MongoDB 的异步 Python 对象-文档映射器(ODM)。
- pynamodb - 一个面向 Amazon DynamoDB 的 Pythonic 接口。
- django-mongodb-backend - Django 的官方 MongoDB 数据库后端。
地理定位
用于地理编码地址以及处理纬度和经度的库。
计算机视觉
用于图像和视频分析、目标检测和 OCR 的库。
- paddleocr - 基于 PaddlePaddle 的多语言 OCR 和文档解析工具包。
- ultralytics - Ultralytics YOLO,用于目标检测、分割、姿态估计、分类和跟踪。
- easyocr - 即用型 OCR,支持 80 多种语言。
- kornia - 用于 PyTorch 的开源可微分计算机视觉库。
- fiftyone - 用于构建高质量数据集和计算机视觉模型的开源工具。
- pytesseract - Tesseract OCR 引擎的封装。
- opencv-python - 开源计算机视觉库。
环境管理
用于 Python 版本和虚拟环境管理的库。
- uv - 一个用 Rust 编写的极速 Python 版本、包和项目管理器。
- pyenv - 简单的 Python 版本管理。
- mise - 一个多语言工具版本管理器,可安装 Python 版本并读取 .python-version 文件。
- virtualenv - 用于创建隔离 Python 环境的工具。
包管理
用于包和依赖管理的库。
- uv - 一个用 Rust 编写的极速 Python 版本、包和项目管理器。
- uv-build - uv 的快速、极简构建后端,适用于纯 Python 项目。
- poetry - 让 Python 依赖管理和打包变得简单。
- pipx - 在隔离环境中安装和运行 Python 应用程序。类似于 Node.js 中的
npx。 - pip - Python 的包安装器。
- conda - 跨平台、与 Python 无关的二进制包管理器。
- hatch - 现代、可扩展的 Python 项目管理器,用于环境、构建和发布。
- hatchling - 来自 hatch 项目的现代、可扩展构建后端。
- setuptools - 历史最悠久且仍广泛使用的 pyproject 构建后端。
- flit-core - 用于纯 Python 包的最小化、无依赖构建后端。
- poetry-core - Poetry 的 PEP 517 构建后端,可独立于 Poetry 使用。
供应链安全
用于审计依赖项以发现已知漏洞,并扫描泄露密钥的工具。
- uv-audit - (uv 的一部分)uv 的依赖漏洞扫描,由 OSV 提供支持。
- betterleaks - 在 git 历史、目录和文件中查找泄露的密钥,由 gitleaks 原作者开发。
- pip-audit - 使用 Python Packaging Advisory Database 或 OSV 审计 Python 环境和依赖树中的已知漏洞。
实现
Python 的实现。
- cpython - 默认且使用最广泛的 Python 编程语言实现,使用 C 编写。
- micropython - 一个面向微控制器和受限系统的精简高效 Python 实现。
- pyodide - 基于 WebAssembly 的浏览器和 Node.js 的 Python 发行版。
- Cython - Python 的优化静态编译器。
- pypy - 一个非常快速且兼容的 Python 语言实现。
数据摄取 / ETL
用于跨多个来源和目标的数据提取、转换和加载管道的库。
- openbb - 面向分析师、量化交易员和AI代理的金融数据平台。
- yfinance - 以 Pythonic 方式从 Yahoo Finance 下载市场和金融数据的简单方法。
- akshare - 金融数据接口库,数据仅供学术研究使用。
- dlt - 一个用于构建数据管道的 Python 库,支持自动模式推断、增量加载以及多个来源和目标。
- awswrangler - Pandas 与 AWS 服务(如 Athena、Glue、Redshift、S3 和 DynamoDB)的集成。
- edgartools - 用于从 SEC EDGAR 文件和 XBRL 财务报表下载结构化数据的库。
DevOps 工具
用于 DevOps 的软件和库。
- ansible - 一个极其简单的 IT 自动化平台。
- awscli - Amazon Web Services 的通用命令行界面;PyPI 包为 v1,处于维护模式,而 v2 随 AWS 捆绑安装程序发布。
- salt - 基础设施自动化和管理系统。
- fabric - 一个简单、Pythonic 的远程执行与部署工具。
- borgbackup - 一个具有压缩和加密功能的去重归档器。
- psutil - 一个跨平台的进程和系统工具模块。
- chalice - 一个用于 AWS 的 Python serverless 微框架。
- boto3 - Amazon Web Services 的 Python 接口。
- supervisor - 用于 UNIX 的 Supervisor 进程控制系统。
- sh - 一个功能完整的 Python subprocess 替代品。
- flower - Celery 任务队列的实时监控和 Web 管理工具。
- pyinfra - 将 Python 代码转换为 shell 命令并在你的服务器上运行。
- azure-sdk-for-python - Microsoft Azure SDK for Python,按服务发布为独立包。
- google-cloud-python - Google Cloud 的 Python 客户端库,按服务发布为独立包。
- cloud-init - 一个多发行版包,用于处理云实例的早期初始化。
- sentry-sdk - Sentry 的 Python SDK。
机器学习
机器学习库。另见 awesome-machine-learning。
- scikit-learn - 最流行的 Python 机器学习库,拥有丰富的文档和社区支持。
- timesfm - 来自 Google Research 的预训练基础模型,用于时间序列预测,默认权重为非商业用途。
- xgboost - 一个可扩展、可移植、分布式的梯度提升库。
- prophet - 用于生成具有多重季节性和趋势变化的时间序列预测的工具。
- lightgbm - 一个快速、分布式、高性能的梯度提升框架。
- optuna - 一个超参数优化框架,支持定义即运行的搜索空间,并剪枝无希望的试验。
- sktime - 一个统一的 scikit-learn 风格框架,用于预测和其他时间序列学习任务。
- catboost - 一个基于决策树的快速、可扩展、高性能梯度提升库。
- hyperopt - 基于树结构帕尔森估计器的分布式异步超参数优化。
- imbalanced-learn - 针对类别不平衡数据集的重采样技术,与 scikit-learn 兼容。
- statsforecast - 快速统计预测模型,如 ARIMA、ETS 和 Theta,使用 numba 编译。
- pgmpy - 用于图形模型因果和概率推理的 Python 库。
- feature-engine - 与 sklearn 兼容的 API,提供最广泛的特征工程和选择工具集。
CLI 开发
用于构建命令行应用程序的库。
- rich - 用于终端中富文本和漂亮格式的 Python 库。还提供了出色的
RichHandler日志处理器。 - textual - 用于构建在终端和浏览器中运行的交互式用户界面的框架。
- tqdm - 用于循环和 CLI 的快速、可扩展进度条。
- typer - 基于 Click 构建的现代 CLI 框架,使用 Python 类型提示。
- click - 以可组合的方式创建美观命令行界面的包。
- prompt_toolkit - 用于构建强大交互式命令行的库。
- alive-progress - 一种新型进度条,具有实时吞吐量、预计剩余时间和非常酷的动画。
- asciimatics - 用于创建全屏文本 UI 的包(从交互式表单到 ASCII 动画)。
- colorama - 跨平台彩色终端文本。
- urwid - 一个用于创建终端 GUI 应用的库,对控件、事件、丰富颜色等提供强力支持。
- cyclopts - 从类型提示函数构建 CLI,并带有基于文档字符串的帮助。
- argparse - (Python 标准库)命令行选项和参数解析。
HTTP 客户端
用于处理 HTTP 的库。
数据分析
用于数据分析的库。
- pandas - 提供高性能、易用的数据结构和数据分析工具的库。
- polars - 一个用 Rust 实现的快速 DataFrame 库,提供 Python API。
- ibis-framework - 一个可移植的 Python dataframe 库,通过单一 API 支持 20 多种后端。
代码分析
静态分析、代码检查器和代码质量检查工具。另见 awesome-static-analysis。
- ruff - 一个极快的 Python 代码检查器和代码格式化器。
- black - 毫不妥协的 Python 代码格式化器。
- mypy - Python 的静态类型检查器。
- ty - 一个极速的 Python 类型检查器和语言服务器。
- ast-grep-cli - 基于语法树的结构化代码搜索、linting 和重写的 CLI 工具。
- pyright - 来自微软的全功能 Python 静态类型检查器,是 Pylance 的引擎。
- pre-commit - 用于管理和维护多语言 pre-commit 钩子的框架。
- bandit - 一个旨在发现 Python 代码中常见安全问题的工具。
- pyrefly - 一个快速的 Python 类型检查器和语言服务器。
- isort - 用于排序导入的 Python 工具/库。
- pylint - 一个完全可定制的源代码分析器。
- vulture - 用于查找和分析 Python 死代码的工具。
- flake8 -
pycodestyle、pyflakes和 McCabe 的包装器。 - rope - Rope 是一个 Python 重构库。
- prospector - 用于分析 Python 代码的工具。
- awesome-flake8-extensions
- import-linter - 一个强制 Python 模块间导入架构约束的代码检查器。
- complexipy - 用 Rust 编写的 Python 代码认知复杂度分析工具。
作业调度器
用于调度作业的库。
- apache-airflow - Airflow 是一个以编程方式编写、调度和监控工作流的平台。
- prefect - 一个现代工作流编排框架,可轻松构建、调度和监控稳健的数据管道。
- dagster - 一个用于数据资产的开发、生产和观测的编排平台。
- schedule - 面向人类的 Python 作业调度。
- apscheduler - 一个轻量但强大的进程内任务调度器,可让你调度函数。
- temporalio - 用于持久、容错工作流的 Temporal SDK,可承受崩溃和重试。
分布式计算
用于分布式计算的框架和库。
文档
用于生成项目文档的库。
- diagrams - Diagram as Code。
- mkdocs-material - 一个基于 MkDocs 的文档框架和 Material Design 主题。
- sphinx - Python 文档生成器。
- zensical - 面向技术文档的现代静态站点生成器。
- pdoc - 为 Python 项目自动生成 API 文档。
- awesome-sphinxdoc
数据库
可直接从 Python 使用的进程内数据库。
- duckdb - 一种进程内 SQL OLAP 数据库管理系统;针对分析和快速查询进行了优化,类似于 SQLite,但适用于分析工作负载。
- chromadb - 用于构建 AI 应用的开源嵌入数据库,支持嵌入和语义搜索。
- zvec - 一种轻量级、进程内向量数据库,可直接嵌入到应用程序中。
- lancedb - 面向多模态 AI 的开发者友好型嵌入式检索数据库。
- tinydb - 一个微型、面向文档的数据库。
- chdb - 进程内 OLAP SQL 引擎,支持完整的 ClickHouse 方言、零拷贝 pandas/Arrow 互操作,并通过
remoteSecure()联合远程 ClickHouse 集群。
科学
用于科学计算的库。另见Python-for-Scientists。
- manim - 用于解释性数学视频的动画引擎。
- numpy - Python科学计算的基础包。
- networkx - 一个用于复杂网络的高生产力软件。
- scipy - Python科学计算的基础算法。
- sympy - 一个用于符号数学的 Python 库。
- statsmodels - Python 中的统计建模和计量经济学。
- numba - 一个使用LLVM的Python NumPy感知JIT编译器。
- pymc - Python 中的概率编程和贝叶斯建模。
- astropy - 一个社区驱动的 Python 天文学库。
- biopython - Biopython是一套免费可用的生物计算工具。
- shapely - 在笛卡尔平面上操作和分析几何对象。
- mesa - 一个用于构建、分析和可视化复杂系统模拟的基于代理的建模框架。
- rdkit - 化学信息学和机器学习软件。
- pint - 操作和处理带单位及量纲分析的物理量。
- colour-science - 实现大量颜色理论变换和算法的综合库。
- obspy - 一个用于地震学的 Python 工具箱。
- simpy - 一个基于过程的离散事件仿真框架。
搜索
用于对数据建立索引和执行搜索查询的库和软件。
- faiss-cpu - 用于高效相似度搜索和稠密向量聚类的库。
- elasticsearch - Elasticsearch 的官方底层 Python 客户端。
- django-haystack - Django 的模块化搜索。
- meilisearch - Meilisearch 搜索引擎的官方 Python 客户端。
- opensearch-py - OpenSearch 的官方底层 Python 客户端。
自然语言处理
用于处理人类语言的库。
测试
用于测试代码库和生成测试数据的库。另见 awesome-python-testing。
- selenium - Selenium WebDriver 的 Python 绑定。
- locust - 用 Python 编写的可扩展用户负载测试工具。
- faker - 一个生成假数据的 Python 包。
- playwright-python - Playwright 测试和自动化库的 Python 版本。
- pytest - 一个成熟的全功能 Python 测试工具。
- seleniumbase - 用于 Web 自动化和测试的 Python 框架,具有隐身选项。
- robotframework - 一个通用的测试自动化框架。
- hypothesis - Hypothesis 是一个高级的 Quickcheck 风格基于属性的测试库。
- mimesis - 一个用多种语言和区域设置生成假但真实数据的 Python 库。
- responses - 一个用于模拟 requests Python 库的实用库。
- tox - 自动在多个 Python 版本中构建和测试发行版。
- factory-boy - Python 的测试夹具替代品。
- schemathesis - 一个从 OpenAPI 或 GraphQL 模式自动进行基于属性的 Web API 测试的工具。
- coverage - 代码覆盖率测量。
- vcrpy - 在测试中记录和重放 HTTP 交互。
- nox - 灵活的 Python 测试自动化。
- polyfactory - 一个基于类型提示的模拟数据生成库(
pydantic-factories的延续)。 - time-machine - 通过在 C 级别模拟当前时间,在测试中穿越时间。
- respx - 使用出色的请求模式和响应副作用模拟 HTTPX。
- awesome-pytest
- unittest.mock - (Python 标准库)一个模拟和修补库。
数据验证
用于数据验证的库。
- pydantic - 使用 Python 类型提示进行数据验证。
- great-expectations - 一个数据质量框架,通过声明式期望来验证、记录和分析数据。
- jsonschema - Python 的 JSON Schema 实现。
- pandera - 一个用于数据框的数据验证库,支持pandas、polars、PySpark等。
任务队列
用于处理任务队列的库。
图像处理
用于操作图像的库。
- rembg - 一个用于移除图像背景的工具。
- pillow - Pillow 是友好的 PIL 分支。
- thumbor - 一个智能成像服务。它支持按需裁剪、调整大小和翻转图像。
- scikit-image - 一个用于(科学)图像处理的 Python 库。
- qrcode - 一个纯 Python 二维码生成器。
- wand - MagickWand 的 Python 绑定,即 ImageMagick 的 C API。
- pyvips - libvips 的绑定,一个低内存需求的快速图像处理库。
- python-barcode - 在 Python 中创建条形码,无需额外依赖。
日志记录
用于生成和处理日志的库。
交互式解释器
交互式 Python 解释器(REPL)。
- marimo - 一个用于 Python 的反应式笔记本,存储为纯 Python,可作为脚本或应用运行。
- ipython - 一个强大的交互式 Python shell,也是 Jupyter 笔记本的内核。
- notebook - 基于 Web 的交互式计算笔记本环境。
- ptpython - 基于 python-prompt-toolkit 构建的高级 Python REPL。
- awesome-jupyter
GUI 开发
用于处理图形用户界面应用程序的库。
- Kivy - 一个用于桌面、移动和嵌入式平台跨平台 GUI 应用的开源框架。
- flet - 用于使用纯 Python 构建现代应用的跨平台 GUI 框架。
- nicegui - 一个易于使用的、基于 Python 的 UI 框架,可在 Web 浏览器中显示。
- dearpygui - 一个简单的 GPU 加速 Python GUI 框架。
- customtkinter - 一个基于 Tkinter 的现代且可定制的 Python UI 库。
- pywebview - 一个围绕 webview 组件的轻量级跨平台原生封装。
- toga - 一个 Python 原生、操作系统原生的 GUI 工具包。
- wxPython - 一个封装 wxWidgets C++ 库的跨平台 GUI 工具包。
- PyGObject - GLib/GObject/GIO/GTK 的 Python 绑定。
- PySide6 - Qt for Python 为 Qt 提供官方 Python 绑定,与 PyQt6 在 API 上高度兼容,但许可不同。
- PyQt6 - Qt 跨平台应用程序和 UI 框架的 Python 绑定。
- tkinter - (Python 标准库)Tcl/Tk GUI 工具包的标准 Python 接口。
文件操作
用于文件操作的库。
- magika - 使用深度学习模型检测文件内容类型。
- watchdog - 用于监视文件系统事件的 API 和 shell 工具。
- python-magic - libmagic 文件类型识别库的 Python 接口。
- watchfiles - 在 Python 中实现简单、现代且快速的文件监视与代码重载。
- pathlib - (Python 标准库)一个跨平台、面向对象的路径库。
- mimetypes - (Python 标准库)将文件名映射到 MIME 类型。
音频与视频处理
用于操作音频、视频及其元数据的库。
调试工具
用于调试代码的库。
- py-spy - 一个用 Rust 编写的 Python 程序采样分析器。
- memray - 一个内存分析器,跟踪 Python 代码、原生扩展和解释器本身中的分配。
- scalene - 一个用于 Python 的高性能、高精度 CPU、GPU 和内存分析器。
- icecream - 通过一个简单的函数调用检查变量、表达式和程序执行。
- django-debug-toolbar - 为 Django 显示各种调试信息。
- pyinstrument - 一个低开销的统计墙钟分析器,输出可读的调用树。
- viztracer - 一个低开销的工具,用于追踪并可视化 Python 代码执行。
- django-silk - 对 Django 的 HTTP 请求和数据库查询进行实时分析和检查。
- pudb - 一个全屏、基于控制台的 Python 调试器。
- ipdb - 支持 IPython 的 pdb。
- flask-debugtoolbar - django-debug-toolbar 的 Flask 移植版。
分发
用于创建可分发可执行包的库。
- Nuitka - 将 Python 程序编译为高性能独立可执行文件(跨平台)。
- pyinstaller - 将 Python 程序转换为独立可执行文件(跨平台)。
- pyarmor - 用于混淆 Python 脚本、将混淆脚本绑定到固定机器或使脚本过期的工具。
- pex - 用于构建自包含 Python 可执行环境的工具(PEP 441 zipapps)。
- cx-Freeze - 将 Python 脚本转换为适用于 Windows、macOS 和 Linux 的独立可执行文件和安装程序。
推荐系统
用于构建推荐系统的库。
- annoy - C++/Python 实现的近似最近邻,针对内存使用进行了优化。
- scikit-surprise - 用于构建和分析推荐系统的 scikit。
- implicit - 针对隐式数据集的快速 Python 协同过滤实现。
数据库驱动
用于连接和操作数据库的库。
- redis - Redis 的 Python 客户端。
- asyncpg - 一个用于 Python/asyncio 的快速 PostgreSQL 数据库客户端库。
- pymysql - 一个基于 PEP 249 的纯 Python MySQL 和 MariaDB 客户端库。
- pymongo - MongoDB 的官方 Python 客户端。
- pyodbc - 用于连接 SQL Server 和任何其他可通过 ODBC 访问的数据库的 ODBC 桥接器。
- mysqlclient - MySQL 和 MariaDB 连接器(MySQLdb1 的分支)。
- psycopg - 一个用于 Python 的 PostgreSQL 适配器,是 psycopg2 的继任者。
- sqlite-utils - 用于操作 SQLite 数据库的 Python CLI 工具和库。
- pgvector - pgvector 对 Python 的支持,为 psycopg、asyncpg、SQLAlchemy 和 Django 添加向量类型和相似性搜索。
- cassandra-driver - Apache Cassandra 的 Python 驱动。
- clickhouse-driver - 用于 ClickHouse 的 Python 驱动,提供原生接口。
- apsw - 另一个 Python SQLite 封装,暴露完整的 SQLite C API。
- clickhouse-connect - 官方 ClickHouse 客户端,带有 SQLAlchemy 和 Superset 连接器。
- mssql-python - 微软官方 SQL Server 和 Azure SQL 驱动,基于 ODBC 构建,性能卓越。
- oracledb - Oracle 数据库的官方 Python 驱动,是 cx_Oracle 的继任者。
- sqlite3 - (Python 标准库)符合 DB-API 2.0 的 SQLite 接口。
静态站点生成器
静态站点生成器是一种软件,它接收文本和模板作为输入,并输出 HTML 文件。
网络虚拟化
用于数据包操作和网络设备自动化的工具与库。
异步编程
用于异步、并发和并行执行的库。另见 awesome-asyncio。
- uvloop - 超快的 asyncio 事件循环。
- trio - 一个友好的异步并发和 I/O 库。
- gevent - 一个基于协程的 Python 网络库,使用 greenlet。
- Twisted - 一个事件驱动的网络引擎。
- awesome-asyncio
- anyio - 一个基于 asyncio 或 trio 的高层异步并发和网络框架。
- asyncio - (Python 标准库)异步 I/O、事件循环、协程和任务。
- concurrent.futures - (Python 标准库)用于异步执行可调用对象的高级接口。
- multiprocessing - (Python 标准库)基于进程的并行。
Web 服务器
兼容 ASGI 和 WSGI 的 Web 服务器。
配置文件
用于存储和解析配置选项的库。
- hydra-core - Hydra 是一个用于优雅配置复杂应用程序的框架。
- python-dotenv - 从
.env文件中读取键值对并将其设置为环境变量。 - dynaconf - Dynaconf 是一个配置管理器,带有 Django 和 Flask 插件。
- pydantic-settings - 使用 Pydantic 模型进行设置管理,支持验证、从环境变量和机密文件加载。
- configparser - (Python 标准库)INI 文件解析器。
身份验证
用于实现身份验证方案的库。
- django-allauth - Django 的身份验证应用,开箱即用。
- pyjwt - Python 中的 JSON Web Token 实现。
- authlib - 一个用于构建 OAuth、OpenID Connect 和 JWT/JWS/JWE/JWK/JWA 的综合库。
- django-guardian - Django 的每对象权限实现。
- django-oauth-toolkit - Django 的 OAuth 2.0 授权服务器。
- oauthlib - 对 OAuth 请求签名逻辑的通用且全面的实现。
- django-rules - 一个轻量但功能强大的应用,为 Django 提供对象级权限,无需数据库。
Cryptography
用于密码学原语和安全协议的库。
- paramiko - 领先的原生 Python SSHv2 协议库。
- cryptography - 一个旨在向 Python 开发者提供密码学原语和配方的包。
- itsdangerous - 安全地将受信任的数据传递给不受信任的环境并返回。
- pynacl - libsodium 的 Python 绑定,libsodium 是 Networking and Cryptography (NaCl) 库的一个分支。
游戏开发
优秀的游戏开发库。
序列化
用于序列化复杂数据类型的库。
- orjson - 快速、正确的 JSON 库。
- marshmallow - 用于在复杂对象与简单 Python 数据类型之间转换的轻量级库。
- msgspec - 一个快速序列化和验证库,内置支持 JSON、MessagePack、YAML 和 TOML。
- dill - 将 pickle 扩展至几乎任意 Python 对象的序列化,包括闭包及整个解释器会话。
- msgpack - Python 的 MessagePack 序列化器实现。
- cloudpickle - 将 pickle 扩展至函数、lambda 及交互式定义的类,用于将代码发送至远程工作节点。
量子计算
量子计算库。
Microsoft Windows
在 Microsoft Windows 上进行 Python 编程。
日期和时间
用于处理日期和时间的库。
- pendulum - 让 Python 日期时间处理变得简单。
- dateparser - 一个用于解析超过 200 种语言区域的人类可读日期的 Python 解析器。
- python-dateutil - 对标准 Python datetime 模块的扩展。
- whenever - 一个现代的日期时间库,类型安全和 DST 安全,使用 Rust 或纯 Python 实现。
- zoneinfo - (Python 标准库)IANA 时区支持。将 tz 数据库 引入 Python。
WebSocket
用于处理 WebSocket 的库。
- channels - 为 Django 带来 WebSocket、长轮询 HTTP 和其他异步支持。
- websockets - 一个专注于正确性和简单性的 WebSocket 服务器和客户端构建库。
- flask-socketio - 用于 Flask 应用的 Socket.IO 集成。
- autobahn-python - 在 Twisted 和 asyncio 上为 Python 提供 WebSocket 和 WAMP 支持。
管理面板
用于管理界面的库。
- flask-admin - 简单且可扩展的 Flask 管理界面框架。
- django-grappelli - Django 管理界面的时尚皮肤。
- django-unfold - 一个现代 Django 管理主题,用于构建仪表板、内部工具和业务应用。
- sqladmin - FastAPI 和 Starlette 中 SQLAlchemy 模型的管理界面。
内置类增强
用于增强 Python 内置类的库。
- attrs - 替代类定义中
__init__、__eq__、__repr__等样板代码。 - python-box - 支持高级点号访问的 Python 字典。
- bidict - 高效、Pythonic 的双向映射数据结构及相关功能。
- uuid-utils - 一个快速、基于 Rust 的 Python 内置
uuid模块即插即用替代品。
HTML 操作
用于处理 HTML 和 XML 的库。
- xmltodict - 处理 XML 就像处理 JSON 一样。
- lxml - 一个非常快速、易用且多功能的库,用于处理 HTML 和 XML。
- justhtml - 一个纯 Python HTML5 解析器,默认对不可信 HTML 进行消毒。
- markupsafe - 安全地将不可信字符串添加到 HTML/XML 标记中。
- beautifulsoup4 - 提供 Python 风格的迭代、搜索和修改 HTML 或 XML 的惯用方法。
消息传递
用于处理消息代理和事件流的库。
- faststream - 用于在 Apache Kafka、RabbitMQ、NATS、MQTT 和 Redis 之上构建异步服务的框架。
- pika - 纯 Python 的 RabbitMQ/AMQP 0-9-1 客户端库。
- paho-mqtt - 适用于 Python 的 Eclipse Paho MQTT 客户端。
- confluent-kafka - Confluent 的 Apache Kafka Python 客户端,基于 librdkafka 构建。
函数式编程
使用 Python 进行函数式编程。
构建工具
任务运行器和软件构建工具。如果你在寻找 Python 打包/构建工具,请参阅 包管理。
- invoke - 一个用于管理面向 shell 的子进程并将可执行 Python 代码组织成 CLI 可调用任务的工具。
- scons - 一个软件构建工具。
- doit - 一个任务运行器和构建工具。
- poethepoet - 一个在 pyproject.toml 中定义任务并与 poetry 或 uv 配合使用的任务运行器。
文本处理
用于解析和操作纯文本的库。
- rapidfuzz - 使用多种字符串度量进行快速模糊字符串匹配,核心为 C++。
- ftfy - 自动让 Unicode 文本更少损坏、更一致。
- sqlparse - 一个非验证型 SQL 解析器。
- phonenumbers - 解析、格式化、存储和验证国际电话号码。
- chardet - Python 字符编码检测器。
- pyparsing - 一个用于创建 PEG 解析器的 Python 库。
- pygments - 一个通用语法高亮器。
- shortuuid - 一个用于生成简洁、无歧义且 URL 安全的 UUID 的生成器库。
- python-slugify - 一个将 Unicode 转换为 ASCII 的 Python slugify 库。
- pyfiglet - 用 Python 实现的 figlet。
- babel - 一个 Python 国际化库。
- charset-normalizer - 通用字符编码检测器,也是 requests 的依赖项。
- unidecode - Unicode 文本的 ASCII 音译。
- parsy - 易用的通用解析器组合子库,用于创建解析器。
- difflib - (Python 标准库)用于计算差异的辅助工具。
硬件
用于硬件编程的库。
- pyserial - 适用于 Windows、macOS、Linux 和 BSD 的 Python 串口访问库。
- bleak - 一个使用 asyncio 的跨平台 Python 蓝牙低功耗客户端。
- pynput - 一个用于控制和监控输入设备的库。
- jumpstarter - 一个硬件在环测试框架,附带 Python 客户端库,用于在真实和虚拟硬件上进行自动化测试。
缓存
用于缓存数据的库。
- django-redis - 功能完整的 Django Redis 缓存后端。
- diskcache - 基于 SQLite 和文件的后端缓存,兼容 Django。
- cachetools - 可扩展的记忆化集合和装饰器。
- django-cacheops - 一个灵活的 ORM 缓存,具有自动的细粒度事件驱动失效机制。
- hishel - 符合 RFC 9111 的 HTTP 缓存,适用于 httpx 和 requests 等客户端以及 FastAPI 等服务器,支持同步和异步。
- dogpile.cache - 用于 Redis、Memcached 及其他后端的缓存 API,支持协调的值重新生成。
Web 资产管理
用于管理、存储、压缩和精简网站资产的工具。
- django-storages - Django 的自定义存储后端集合。
- django-compressor - 将链接和内联的 JavaScript 或 CSS 压缩为单个缓存文件。
- whitenoise - 极大简化 WSGI 应用的静态文件服务,支持压缩和缓存头。
电子邮件
用于发送电子邮件的库。
- yagmail - 又一个 Gmail/SMTP 客户端。
- django-anymail - Django 电子邮件后端和 webhooks,用于事务性电子邮件服务,如 Amazon SES、Brevo、Mailgun、Postmark 和 Resend。
- aiosmtplib - 一个 asyncio SMTP 客户端。
包仓库
本地 PyPI 仓库服务器、代理和镜像。
- pypiserver - 一个极简 PyPI 服务器,用于通过 pip 上传和安装包。
- devpi - PyPI 服务器及打包/测试/发布工具。
- bandersnatch - 由 Python 打包权威机构(PyPA)提供的 PyPI 镜像工具。
Web 安全
用于应用层 Web 安全的库。
网站
- Python Developer Tooling Handbook - 涵盖包管理、代码检查、类型检查、测试等内容的现代 Python 开发者工具综合指南。