English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Функция setattr() устанавливает значение атрибута объекта.
Синтаксис функции setattr():
setattr(object, name, value)
Чтобы получить атрибут объекта, используйтеgetattr().
Функция setattr() имеет три параметра:
object -Объект, для которого необходимо установить атрибут
name -Имя свойства
value -Значение属性的
Метод setattr() не возвращает ничего. Возвращает None.
class Person: name = 'Adam' p = Person() print('До изменения:', p.name) # Установить имя на 'John' setattr(p, 'name', 'John') print('После изменения:', p.name)
Результат вывода
До изменения: Adam После изменения: John
Если свойство не найдено, setattr() создает новый атрибут и присваивает ему значение. Но это возможно только в том случае, если объект реализует метод __dict__().
Вы можете использоватьdir()Функция проверяет все свойства объекта.
class Person: name = 'Adam' p = Person() # Установить имя на 'John' setattr(p, 'name', 'John') print('Имя: ', p.name) # Установка свойства, которое не существует в Person setattr(p, 'age', 23) print('Возраст: ', p.age)
Результат вывода
Имя: John Возраст: 23