Проверка существования атрибута
Отношение Python к созданию экземпляров объекта поднимает одну важную проблему - в отличие от других языков программирования, Вы не можете ожидать, что все объекты одного класса имеют одинаковые наборы свойств.
Как в примере с редактором. Посмотрите на это внимательно.
Объект, созданный конструктором, может иметь только один из двух возможных атрибутов: a
или b
.
Выполнение кода даст следующий вывод:
1
Traceback (most recent call last):
File ".main.py", line 11, in
print(example_object.b)
AttributeError: 'ExampleClass' object has no attribute 'b'
output
Как видите, доступ к несуществующему атрибуту объекта (класса) вызывает исключение AttributeError.