все Python 3Встроенные функциипонятие
getattr
ООП
Получает атрибут объекта по имени как строке. Третий аргумент — значение по умолчанию, если атрибут не существует (иначе AttributeError).
Синтаксис
getattr(object, name[, default])
Значение по умолчанию вычисляется всегда, ещё до самого поиска атрибута, — если оно дорогое или имеет побочный эффект, лучше сначала спросить hasattr. Вторая ловушка: default подставляется на любой AttributeError, включая тот, который бросил код внутри property, поэтому настоящая ошибка в свойстве тихо превращается в «атрибута нет».
Примеры
class A:
x = 42
a = A()
print(getattr(a,'x')) # → 42
print(getattr(a,'y',None)) # → None
getattr([1,2,3],'append')(4) # → [1,2,3,4]
print(getattr('hello','upper')()) # → HELLO
name = 'x'; print(getattr(a, name)) # → 42
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности