这篇文章主要介绍了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
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。