用途:提供 Python 错误处理的最佳实践与模式指导,帮助构建健壮的 Python 应用,包括输入校验、有意义的异常和优雅的失败处理。
主要能力:
- 快速失败:在昂贵操作前尽早校验输入,尽量一次性报告全部校验错误。
- 有意义的异常:使用合适的异常类型并附加上下文,说明失败内容、原因与修复方式。
- 部分失败处理:批量操作中不让单个失败中断全部,分别跟踪成功与失败。
- 保留上下文:通过异常链保留完整错误轨迹便于调试。
核心模式:
- 早期输入校验:在 API 边界处校验所有输入,如检查必填字段、数值范围。
- 尽早转换为领域类型:在系统边界把字符串和外部数据解析为带类型的领域对象,例如用 Enum 解析输出格式。
- 使用 Pydantic 做复杂校验:通过 BaseModel、Field、field_validator 实现结构化输入校验与自动错误信息。
- 将错误映射到标准异常:按失败类型选用 ValueError、TypeError、KeyError、RuntimeError、TimeoutError、FileNotFoundError、PermissionError 等,并附加上下文。
使用方式:技能按需求分析、架构设计、实现指导、代码审查、优化建议的工作流程提供指导;更详细的进阶模式见 references/details.md。
适用场景:校验用户输入与 API 参数、设计应用异常层级、处理批处理部分失败、将外部数据转换为领域类型、构建用户友好的错误信息、实现快速失败校验。
限制与注意:避免在简单场景过度设计;不要忽视性能与安全;确保测试覆盖边界情况;保持文档与代码同步。资料未提供具体安装命令、收费方式或平台支持信息。