PY3.W0222

Signature differs

Used when a method signature is different than in the implemented interface or in an overridden method.

Noncompliant Code:

Copy
class Animal:
    def run(self, distance=0):
        print(f"Ran {distance} km!")


class Dog(Animal):
    def run(self, distance):  # [signature-differs]
        super(Animal, self).run(distance)
        print("Fetched that stick, wuff !")

Compliant Code:

Copy
class Animal:
    def run(self, distance=0):
        print(f"Ran {distance} km!")


class Dog(Animal):
    def run(self, distance=0):
        super(Animal, self).run(distance)
        print("Fetched that stick, wuff !")

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.