Функцията 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)
Изход
Името е: John Age е: 23