Module (37%)
Section (67%)

Проверка существования атрибута

Отношение 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.



Code

class ExampleClass:
def __init__(self, val):
if val % 2 != 0:
self.a = 1
else:
self.b = 1


example_object = ExampleClass(1)

print(example_object.a)
print(example_object.b)
{{ dockerServerErrorMsg }} ×
{{ errorMsg }} ×
{{ successMsg }} ×