首页 > 解决方案 > 为什么 mypy 将第三方属性视为无类型?

问题描述

我正在尝试使用 mypy 检查 python 模块中的类型注释。但是当我导入 ruamel.yaml 并尝试使用 int 值设置宽度时。

    yaml = YAML(typ='safe')
    yaml.width = 200

mypy 一直抱怨它,因为 ruamel.yaml 将构造函数中的宽度设置为 None,并且由于某种原因 mypy 现在认为它是 None 类型。

Incompatible types in assignment (expression has type "int", variable has type "None")

我试图设置no_strict_optional = True仍然没有变化。所以现在我忽略了它,但我想了解为什么它没有默认为可选值,或者让我有机会在不接触 ruamel.yaml 代码的情况下分配正确的类型。

标签: pythonmypy

解决方案


推荐阅读