加类型注解并用 mypy 提前抓出低级错误

注解要从宽到严分步上,一上来全开老项目会报出成百上千条,没人看。

先标参数和返回值,集合类型写清元素类型,可空用 X 或 None;mypy 先只检查已注解的函数,通过后再要求未注解函数必须标注。

第三方库没类型存根时先找 types 包,没有就按模块忽略,别到处写 Any。

把 mypy 放进 CI 当必过项。

def fetch(ids: list[int], timeout: float = 3.0) -> dict[str, str]: ...

# mypy.ini
[mypy]
python_version = 3.11
warn_unused_ignores = True
disallow_untyped_defs = True
ignore_missing_imports = True
THE END
喜欢就支持一下吧
点赞11 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容