Функция setattr () устанавливает значение атрибута объекта.
Синтаксис setattr()функции:
setattr (объект, имя, значение)
Если вы хотите получить атрибут объекта, используйте getattr ().
setattr () Параметры
setattr()Функция принимает три параметра:
- объект - объект, атрибут которого должен быть установлен
- name - имя атрибута
- значение - значение, присвоенное атрибуту
Возвращаемое значение из setattr ()
setattr()Метод не возвращает ничего; возвращается None.
Пример 1. Как setattr () работает в Python?
class Person: name = 'Adam' p = Person() print('Before modification:', p.name) # setting name to 'John' setattr(p, 'name', 'John') print('After modification:', p.name)
Вывод
До модификации: Адам После модификации: Джон
Пример 2: Когда атрибут не найден в setattr ()
Если атрибут не найден, setattr()создает новый атрибут и присваивает ему значение. Однако это возможно только в том случае, если объект реализует __dict__()метод.
Вы можете проверить все атрибуты объекта с помощью функции dir ().
class Person: name = 'Adam' p = Person() # setting attribute name to John setattr(p, 'name', 'John') print('Name is:', p.name) # setting an attribute not present in Person setattr(p, 'age', 23) print('Age is:', p.age)
Вывод
Имя: Джон Возраст: 23








