все Python 3Исключенияисключение
AttributeError
встроенные исключения
Вызывается при обращении к несуществующему атрибуту или методу объекта.
Синтаксис
raise AttributeError('сообщение')
Большая часть студенческих AttributeError — это на самом деле None: методы, меняющие объект на месте (list.sort(), list.append(), random.shuffle()), возвращают None, и после строки lst = lst.sort() следующее же обращение падает с «'NoneType' object has no attribute ...». Сообщение стоит дочитывать до конца: в нём назван и тип объекта, и имя атрибута, а начиная с 3.10 интерпретатор ещё и подсказывает похожее имя, если это была опечатка.
Примеры
x = 42
x.upper() # AttributeError: 'int' has no 'upper'
class A: pass
A().run() # AttributeError
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности