Web 开发框架
全功能框架
| 库 | 说明 |
|---|---|
| Django | 大而全的重量级框架,内置 ORM、Admin、Auth、模板引擎,适合企业级项目和快速原型开发 |
| Flask | 轻量级微框架,核心精简但扩展丰富,适合中小型项目和 API 服务 |
| Tornado | 异步网络框架,原生支持 WebSocket 和长轮询,适合实时应用和高并发场景 |
异步框架
| 库 | 说明 |
|---|---|
| FastAPI | 基于类型注解的高性能异步框架,自动生成 OpenAPI 文档,适合构建 RESTful API |
| sanic | 异步 Web 框架,语法类似 Flask 但支持 async/await,追求极致性能 |
| Falcon | 面向 API 和微服务的极简框架,专注于速度和正确性 |
数据/AI 可视化
| 库 | 说明 |
|---|---|
| streamlit | 快速搭建数据看板和可视化应用,无需前端知识,适合数据团队内部工具 |
| gradio | 快速构建 AI 模型演示界面,支持音频/视频/图像输入,适合模型展示和 Demo |
| nicegui | 用纯 Python 构建 Web UI,适合快速原型和内部工具开发 |
微服务与扩展
| 库 | 说明 |
|---|---|
| django-rest-framework | Django 的 REST API 扩展,提供序列化、认证、分页、视图集等开箱即用功能 |
| nameko | 微服务框架,支持 RPC 和事件驱动,适合构建分布式系统 |
| Microdot | 超小型 Web 框架,支持 MicroPython,适合嵌入式和 IoT 场景 |
| cherrypy | 面向对象的 HTTP 框架,历史悠久,适合需要稳定性的项目 |
网络请求库
| 库 | 说明 |
|---|---|
| requests | 最流行的同步 HTTP 库,API 简洁,适合大多数 HTTP 请求场景 |
| httpx | 支持同步/异步的 HTTP 客户端,兼容 requests API,适合需要异步支持的项目 |
| aiohttp | 异步 HTTP 客户端/服务端,适合高并发网络请求和 WebSocket 场景 |
数据科学与可视化
数据处理
| 库 | 说明 |
|---|---|
| pandas | 数据分析核心库,DataFrame 结构,适合结构化数据的清洗、转换和分析 |
| numpy | 科学计算基础库,多维数组运算,是 pandas/scikit-learn 等库的基础依赖 |
| tqdm | 进度条工具,支持迭代器包装,适合长时间运行任务的进度展示 |
可视化
| 库 | 说明 |
|---|---|
| matplotlib | 经典的 2D 绘图库,功能全面,适合学术论文和静态图表 |
机器学习与深度学习
深度学习框架
| 库 | 说明 |
|---|---|
| pytorch | Meta 开源的深度学习框架,动态图机制,适合研究和生产 |
| transformers | Hugging Face 的 NLP/LLM 预训练模型库,支持 BERT、GPT、LLaMA 等主流模型 |
传统机器学习
| 库 | 说明 |
|---|---|
| scikit-learn | 传统机器学习算法库,包含分类、回归、聚类、降维等,适合入门和经典 ML 任务 |
| lightautoml | 全自动机器学习框架,自动特征工程和模型选择,适合快速 baseline |
数据库与 ORM
| 库 | 说明 |
|---|---|
| SQLAlchemy | Python SQL 工具包和 ORM,功能强大,支持多种数据库,适合复杂查询和企业级应用 |
| tortoise-orm | 异步 ORM,API 类似 Django ORM,适合 FastAPI 等异步框架 |
| peewee | 轻量级 ORM,简单易用,适合小型项目和脚本 |
| databases | 异步数据库支持库,底层使用 SQLAlchemy core,适合异步项目 |
| alembic | SQLAlchemy 的数据库迁移工具,管理 schema 变更 |
数据验证
| 库 | 说明 |
|---|---|
| pydantic | 基于类型注解的数据验证库,FastAPI 默认使用,适合 API 数据校验和配置管理 |
| voluptuous | 数据验证库,适合复杂嵌套数据结构的校验 |
任务调度与队列
| 库 | 说明 |
|---|---|
| celery | 分布式任务调度框架,支持 RabbitMQ/Redis 等消息中间件,适合异步任务和定时任务 |
| apscheduler | 轻量级定时任务调度框架,支持 cron 表达式,适合单机定时任务 |
| rq | 基于 Redis 的轻量级任务队列,比 celery 简单,适合小型项目 |
| schedule | 人类友好的定时任务调度,语法简洁,适合简单定时需求 |
| funboost | 异步任务调度框架,支持多种消息队列 |
包管理与环境管理
依赖管理
| 库 | 说明 |
|---|---|
| poetry | 现代依赖管理和打包工具,推荐用于新项目,支持 lock 文件和虚拟环境管理 |
| pdm | 依赖管理工具,支持 PEP 582(无需激活虚拟环境),适合追求现代化的工作流 |
| pipenv | 结合 pip 和 virtualenv,自动生成 lock 文件,适合需要确定性依赖的项目 |
版本与环境管理
| 库 | 说明 |
|---|---|
| pyenv | Python 版本管理工具,支持多版本共存和切换 |
| conda | 跨平台包和环境管理工具,适合数据科学和需要 C 库依赖的场景 |
| virtualenv | 虚拟环境管理工具,轻量级隔离项目依赖 |
| pipx | 在隔离环境中安装和运行 Python CLI 工具,避免全局污染 |
代码质量与格式化
| 库 | 说明 |
|---|---|
| ruff | 极速 Python linter 和 formatter,Rust 编写,可替代 flake8/isort/black 等多个工具 |
| black | 代码格式化工具,”不妥协”的风格,适合团队统一代码风格 |
| click | 命令行界面开发库,适合构建 CLI 工具 |
测试框架
| 库 | 说明 |
|---|---|
| pytest | 最流行的 Python 测试框架,插件丰富,支持参数化、fixture 等高级特性 |
| unittest | 标准库自带的单元测试框架,适合需要与标准库兼容的场景 |
| pytest-html | pytest 的 HTML 测试报告插件,适合生成可视化测试报告 |
| mock | 模拟对象库,用于隔离外部依赖的单元测试 |
进程管理与部署
| 库 | 说明 |
|---|---|
| gunicorn | 生产级 WSGI HTTP 服务器,适合部署 Django/Flask 等 WSGI 应用 |
| uvicorn | ASGI 服务器,FastAPI/Starlette 推荐使用,支持 HTTP/2 和 WebSocket |
| supervisor | 进程管理工具,适合管理多个服务进程的启停和监控 |
| uwsgi | uWSGI 应用服务器,功能丰富但配置复杂 |
日期时间处理
| 库 | 说明 |
|---|---|
| datetime | 标准库,日期时间处理的基础 |
| arrow | 更友好的日期时间库,API 简洁,适合频繁的日期操作 |
| dateutil | datetime 模块的强大扩展,支持相对日期计算和时区处理 |
| delorean | 人性化的日期时间处理,语法优雅 |
文件与数据格式
代码打包与加密
| 库 | 说明 |
|---|---|
| pyinstaller | 将 Python 程序打包为独立可执行文件,适合分发桌面应用 |
| Nuitka | Python 编译器,将代码编译为 C++,提升性能和保护源码 |
| pyarmor | Python 代码加密和保护工具,适合商业软件分发 |
性能分析
| 库 | 说明 |
|---|---|
| cProfile | 标准库自带的性能分析工具,适合函数级性能瓶颈定位 |
| memory_profiler | 监控代码的内存使用情况,适合排查内存泄漏 |
| line_profiler | 行级性能分析工具,精确定位耗时代码行 |
| psutil | 系统资源监控库,支持 CPU、内存、磁盘、网络等,适合运维脚本 |
其他实用工具
| 库 | 说明 |
|---|---|
| Faker | 生成虚拟数据(姓名、地址、电话等),适合测试数据生成 |
| dependency-injector | 依赖注入框架,适合大型项目的架构解耦 |
| retry | 重试装饰器,适合网络请求等不稳定操作的容错处理 |