1. 介绍
1.1 hasattr():判断object对象中是否存在name属性,当然对于python的对象而言,属性包含变量和方法;
有则返回True;
没有则返回False;
1.2 getattr():获取object对象的属性的值,
如果存在,则返回属性值;
如果不存在,分为两种情况:
一种是没有default参数时,会直接报错;
一种给定了default参数,若对象本身没有name属性,则会返回给定的default值;如果给定的属性name是对象的方法,则返回的是函数对象,需要调用函数对象来获得函数的返回值;调用的话就是函数对象后面加括号,如func之于func();
1.3 setattr():给object对象的name属性赋值value,
如果对象原本存在给定的属性name,则setattr会更改属性的值为给定的value;
如果对象原本不存在属性name,setattr会在对象中创建属性,并赋值为给定的value;
2. 使用示例
2.1
代码示例
>>> class A():
name = 'python'
def func(self):
return 'A()类的方法func()'
>>>
>>> hasattr(A, 'name') # 判断类A中是否有name属性,有返回True
True
>>> hasattr