У меня есть такой класс
class SomeClass:
def doSomething(self):
self.counter = 50
Я создаю экземпляр x
для SomeClass
x = SomeClass()
Когда я пытаюсь получить значение счетчика следующим образом: x.counter
Я получаю следующую ошибку -
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: SomeClass instance has no attribute 'counter'
Но после того, как я вызываю функцию-член x.doSomething()
и затем ищу атрибут данных, он становится доступным.
>>> x.doSomething()
>>> x.counter
50
Почему это так? Разве все атрибуты данных не будут доступны после создания экземпляра?
Спасибо.