请审查或完善 的类型契约。输入:、、、、、。
以真实调用契约为准完善类型标注,并用项目现有工具验证。检查 Paddle 公开 API 时核对对应接口要求;普通 Python 工程按自身兼容范围选择类型语法,不直接套用框架专属约定。
1. 先区分公开接口、内部辅助函数和动态扩展入口,记录真实调用方依赖的参数与返回值。优先完善公开边界,不为了追求覆盖率给所有局部变量堆叠注解,更不能通过修改业务签名制造表面上的类型统一。
2. 将函数签名、类公开属性和说明文档逐项对照,检查可为空、默认值、集合元素和返回分支。对字典结构尽量描述明确字段,对返回结果写出调用方实际拿到的具体类型,避免用 Any 掩盖已知契约。
3. 检查参数是否需要接受更通用的集合协议,以及实现是否真的支持这些输入。保留必要的运行时校验,类型提示不能替代用户输入验证;如果使用枚举、字面量或重载,说明它们与真实运行行为的对应关系。
4. 核对最低解释器和静态工具支持的语法,区分注解上下文与运行时类型别名。仅为类型服务的导入可以评估放入 TYPE_CHECKING,但需要运行时反射或解析注解的代码必须另外验证,不能盲目移动导入。
5. 检查文档示例、外部调用和异常分支是否同时符合新类型,识别循环导入、可变容器与泛型参数缺失。只在有明确契约的地方收紧类型,并列出可能影响调用方的变化及迁移办法。
6. 使用项目现有静态检查和相关运行测试验证,在最低支持环境做导入与关键调用检查。对每个无法准确标注的动态入口说明原因和收敛方案,禁止大量忽略错误后宣称类型已经完整可靠。
输出:公开接口契约表、类型与文档差异、必要代码修改、兼容性说明及检查结果。缺少调用方或版本信息时记录假设和待确认项;没有执行条件就提供验证命令与预期检查目标,不虚报静态检查已通过。
官方来源(2026-09-08 核验):
- [百度飞桨《Python 类型提示标注规范》](https://www.paddlepaddle.org.cn/documentation/docs/zh/dev_guides/style_guide_and_references/type_annotations_specification_cn.html)