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

Available in:

DataSpell 2023.3, PyCharm 2023.3

Plugin:

Python Community Edition, 233.SNAPSHOT

Last modified: 13 July 2023