跳到内容

缺少返回类型特殊方法 (ANN204)

源自 flake8-annotations 代码检查工具。

有时提供修复。

作用

检查“特殊”方法(如 __init____new____call__)是否具有返回类型注释。

为什么这不好?

类型注解是记录函数返回类型的好方法。 当与类型检查器一起使用时,它们还可以帮助捕获错误,通过确保任何返回值的类型以及调用者期望的类型都符合预期。

请注意,类型检查器通常允许您省略 __init__ 方法的返回类型注释,只要至少有一个参数具有类型注释即可。 要选择启用此行为,请在您的 pyproject.tomlruff.toml 文件中使用 mypy-init-return 设置

[tool.ruff.lint.flake8-annotations]
mypy-init-return = true

示例

class Foo:
    def __init__(self, x: int):
        self.x = x

建议改为

class Foo:
    def __init__(self, x: int) -> None:
        self.x = x