跳到内容

duplicate-bases (PLE0241)

源自 Pylint 代码检查工具。

有时提供修复。

作用

检查类定义中的重复基类。

为什么这不好?

包含重复的基类将在运行时引发 TypeError

示例

class Foo:
    pass


class Bar(Foo, Foo):
    pass

建议改为

class Foo:
    pass


class Bar(Foo):
    pass

修复安全性

如果基类中存在注释,则此规则的修复被标记为不安全,因为注释可能会被删除。

例如,在以下情况下,修复将被标记为不安全

class Foo:
    pass


class Bar(
    Foo,  # comment
    Foo,
):
    pass

参考