Inspectopedia Help

Incompatible signatures of __new__ and __init__

Reports incompatible signatures of the __new__ and __init__ methods.

Example:

class MyClass(object): def __new__(cls, arg1): return super().__new__(cls) def __init__(self): pass

If the __new__ and __init__ have different arguments, then the MyClass cannot be instantiated.

As a fix, the IDE offers to apply the Change Signature refactoring.

Inspection Details

By default bundled with:

DataSpell 2024.1, IntelliJ IDEA 2024.1, PyCharm 2024.1, Qodana for JVM 2024.1,

Can be installed with plugin:

Python Community Edition, 241.SNAPSHOT

Last modified: 29 April 2024