Как получить доступ к объектному атрибуту заданная строка, соответствующая имени этого атрибута
как вы устанавливаете / получаете значения атрибутов t
дано x
.
class test():
attr1 = int
attr2 = int
t = test()
x = "attr1"
2 ответа:
есть python встроенный в функции setattr и getattr. Который может использоваться для установки и получения атрибута класса.
краткий пример:
>>> from new import classobj >>> obj = classobj('Test', (object,), {'attr1': int, 'attr2': int}) # Just created a class >>> setattr(obj, 'attr1', 10) >>> setattr(obj, 'attr2', 20) >>> getattr(obj, 'attr1') 10 >>> getattr(obj, 'attr2') 20