如何访问与该属性名称对应的对象属性给定的string

你如何设置/获取由x给定的t的属性值。

 class test(): attr1 = int attr2 = int t = test() x = "attr1" 

有内置函数称为getattrsetattr

 getattr(object, attrname) setattr(object, attrname, value) 

在这种情况下

 x = getattr(t, "attr1") setattr(t, 'attr1', 21) 

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