You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Mypy识别已加类型注解但无py.typed标记的外部包?

让Mypy识别无py.typed标记但带类型注解的外部包

你可以通过修改Mypy的配置文件,直接指定目标包需要被当作带类型的包处理,无需生成存根或关闭类型检查,具体操作如下:

方法:配置Mypy针对目标包的检查规则

找到你的Mypy配置文件(通常是pyproject.toml或mypy.ini),添加针对目标包的专属配置块:

如果你用pyproject.toml

[tool.mypy]
# 保留原有其他配置

[tool.mypy.你的包名.*]
ignore_missing_imports = false
follow_imports = silent
strict = true

如果你用mypy.ini

[mypy]
# 保留原有其他配置

[mypy-你的包名.*]
ignore_missing_imports = False
follow_imports = silent
strict = True

把上面的你的包名替换成实际的外部包名称即可。

配置项说明

  • ignore_missing_imports = false:告诉Mypy不要忽略这个包的导入,强制进行类型检查
  • follow_imports = silent:避免Mypy因为包缺少py.typed标记而抛出"import of untyped module"的错误
  • strict = true:启用严格类型检查,让Mypy读取并使用包内已有的类型注解

这样配置后,Mypy就会正常识别该包内的类型注解,直到PR合并、官方添加py.typed标记为止。

内容的提问来源于stack exchange,提问作者theberzi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 12:22:07