报告包含 __slots__ 定义的类的无效用法。

访问未定义属性的示例:


class Foo:
    __slots__ = ['foo', 'bar']

    def __init__(self):
        self.x = 3  # error: 'x' is not defined in __slots__

属性冲突的示例:


class A:
    __slots__ = ("x",)
    x = 42  # error: conflict with "x" listed in __slots__

示例 slots=True


from dataclasses import dataclass

@dataclass(slots=True)  # 错误:__slots__ 也在 Foo 中定义
class Foo:
    __slots__ = ['a']