getattr() 函数:用于返回一个对象属性值。
语法:
getattr(object, name[, default])
class A(object):
foo = 'bar'
def add(self, a, b):
return a+b
a = A()
getattr(a, 'foo') # 获取属性 foo 值
>>>>>bar # 返回foo值bar
getattr(a, 'foo1') # 属性不存在 触发异常
Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'A' object has no attribute 'foo1'
getattr(a, 'foo1', 'bar')
>>>>>>bar # 当属性不存在时 返回默认值
getattr(a, add)(1,2)
>>>>>>3 # getattr(a, add)返回a对象add方法的引用,后面小括号传递参数