Возможный дубликат:
Само объяснение Python
Я изучаю Python, и у меня есть вопрос, более теоретический, чем практический, относительно переменных класса доступа из метода этого класса.
Например, мы имеем:
class ExampleClass:
    x = 123
    def example_method(self):
        print(self.x)
Почему обязательно писать точно self.x, а не только x? x принадлежит пространству имен класса, и его использование также принадлежит ему. Что мне не хватает? Какое обоснование стоит за таким стилем?
В С++ вы можете написать:
class ExampleClass {
public:
    int x;
    void example_method()
    {
        x = 123;
        cout << x;
    };
};
И это сработает!
