a method has the same name than an attribute

Metadata

ID: python-best-practices/method-hidden

Language: Python

Severity: Warning

Category: Error Prone

Description

Make sure that class attribute and class methods have a unique name without any collision.

Non-Compliant Code Examples

class MyClass:
    def __init__(self, something):
        self.foo = something

    def bla(foo):
        pass

    def foo(self): # hidden by self.foo
        pass

Compliant Code Examples

class MyClass:
    def __init__(self, something):
        self.foo = something

    def bla(foo):
        pass

    def bar(self): # hidden by self.foo
        pass
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains

Seamless integrations. Try Datadog Code Analysis