PY3.R0901

Too many ancestors

Used when class has too many parent classes, try to reduce this to get a simpler (and so easier to use) class.

Noncompliant Code:

Copy
class A: ...
class B: ...
class C: ...
class D: ...
class E: ...
class F: ...
class G: ...
class H: ...
class I: ...
class J: ...

class Foo(A, B, C, D, E, F, G, H, I, J):
    pass

Compliant Code:

Copy
class A: ...
class B: ...
class C: ...

# max of 7 by default, can be configured
class Foo(A, B, C):
    pass

The content on this page is adapted from the Pylint User Guide, Copyright ©2003-2022, Logilab, PyCQA and contributors. All rights reserved. https://pylint.pycqa.org/en/latest/index.html#, and is used under the Python Software Foundation License Version 2. Examples, recipes, and other code in the Pylint documentation are additionally licensed under the Zero Clause BSD License.