PY3.E0302

Unexpected special method signature

Emitted when a special method was defined with an invalid number of parameters. If it has too few or too many, it might not work at all.

Noncompliant Code:

Copy
class Foo:
    def __enter__(self, context):
        pass

    def __exit__(self, type):
        pass

Compliant Code:

Copy
class Foo:
    def __enter__(self):
        pass

    def __exit__(self, type, value, traceback):
        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.