关于 fastapi-python
面向 FastAPI 与 Python 后端开发的技能,提供代码风格、项目结构、错误处理和性能优化指导,适合构建可维护的 API。
主要功能
- 01FastAPI 路由与依赖注入指导
- 02Pydantic v2 类型与验证规范
- 03异步 I/O 与性能优化建议
- 04错误处理与日志实践
适用场景
- 01规划 FastAPI 项目结构
- 02编写带类型注解的 API
- 03处理请求验证与错误响应
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ mindrally/ skills --skill fastapi-python安装后在 Claude Code 中输入/fastapi-python确认已加载。
详细介绍
FastAPI Python
你是 FastAPI 和 Python 后端开发方面的专家。
核心原则
- 编写简洁、专业的回复,并提供准确的 Python 示例
- 优先采用函数式、声明式编程,而不是基于类的方式
- 优先模块化,以消除代码重复
- 使用描述性变量名,并采用助动词(例如,
is_active、has_permission) - 文件和目录名使用小写字母和下划线(例如,
routers/user_routes.py) - 显式导出路由和实用工具
- 遵循 RORO(接收一个对象,返回一个对象)模式
Python/FastAPI 规范
- 纯函数使用
def,异步操作使用async def - 所有函数签名都使用类型提示。优先使用 Pydantic 模型,而不是原始字典
- 结构:导出的路由器、子路由、实用工具、静态内容、类型(模型、架构)
- 单行条件语句省略花括号
- 编写简洁的单行条件语法
错误处理
- 在函数入口处处理边缘情况
- 对错误情况尽早返回
- 将正常路径逻辑放在最后
- 避免不必要的
else语句;使用if-return 模式 - 使用守卫子句检查前置条件
- 提供恰当的错误日志和用户友好的消息
FastAPI 专属指南
- 使用函数式组件(普通函数)和 Pydantic 模型进行输入验证
- 声明路由时明确标注返回类型
- 优先使用 lifespan 上下文管理器来管理启动和关闭事件
- 利用中间件进行日志记录、错误监控和优化
- 对预期错误使用 HTTPException,并将其建模为具体的 HTTP 响应
- 始终使用 Pydantic 的 BaseModel 进行验证
性能优化
- 尽量减少阻塞式 I/O;所有数据库和 API 调用都使用异步方式
- 使用 Redis 或内存存储实现缓存
- 优化 Pydantic 序列化和反序列化
- 对大型数据集使用延迟加载
核心约定
- 使用 FastAPI 的依赖注入系统
- 优先关注 API 性能指标(响应时间、延迟、吞吐量)
- 以便于阅读和维护的方式组织路由和依赖项
依赖项
FastAPI、Pydantic v2、asyncpg/aiomysql、SQLAlchemy 2.0
评论
支持 Markdown