Почему доступ к переменной класса изнутри класса требует «себя» в Python? [Дубликат]

Возможный дубликат:

Python ‘самость» explainedI»

Я изучаю Python и у меня есть вопрос, более теоретический, чем практический, относительно переменных класса доступа из метода этого класса.

Например, у нас есть:

class ExampleClass:
    x = 123
    def example_method(self):
        print(self.x)

Почему обязательно писать именноself.x, не просто ?xx принадлежит пространству имен класса, и метод, использующий его, также принадлежит ему. Что мне не хватает? Какое обоснование стоит за таким стилем?

В C ++ вы можете написать:

class ExampleClass {
public:
    int x;
    void example_method()
    {
        x = 123;
        cout < x;
    };
};

Ответы на вопрос(4)

Ваш ответ на вопрос