时间:2020-11-28 14:32:48 | 栏目:Python代码 | 点击:次
这篇文章主要介绍了python3 反射的四种基本方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
class Person(object): def __init__(self): pass def info(self): print('我是person类中的info方法')
1.getattr()方法
这个方法是根据字符串去某个模块中寻找方法
instantiation = reflect.Person()#先实例化 f = getattr(instantiation,'info')#使用getattr函数去寻找字符串的同名方法 f()#调用方法 输出结果:我是person类中的info方法
2.hasattr()方法
这个方法是根据字符串去判断某个模块中该方法是否存在
instantiation = reflect.Person()#先实例化 f = hasattr(instantiation,'info') print(f) 输出结果:True
3.setattr()方法
这个方法是根据字符串去某个模块中设置方法
instantiation = reflect.Person() f = setattr(instantiation,'exit','this is a exit method') f2 = hasattr(instantiation,'exit') print(f2) 输出结果就是True
4.delattr()方法
这个方法是根据字符串去某个模块中删除方法
instantiation = reflect.Person()#实例化 f = delattr(instantiation,'exit') f = hasattr(instantiation,'exit') print(f) 输出结果就是False