Атрибут category
в классе C1
создаётся внутри метода (__init__
), а значит, он становится атрибутом экземпляра, а не атрибутом класса. Такой атрибут доступен только после создания объекта через C3()
, и обращаться к нему нужно через сам объект (obj.category
), а не через класс (C3.category
).
Когда в коде пишется print(C3.category)
, Python пытается найти атрибут класса с именем category
у C3 или его родителей. Но такого атрибута нет — category создаётся только при вызове конструктора (__init__
). Поэтому попытка обращения к C3.category
приводит к ошибке AttributeError
.
>>Click here to continue<<