python学习:反射的四种基本方法
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)
#python学习交流群:153708845
#输出结果就是True
4.delattr()方法
这个方法是根据字符串去某个模块中删除方法
instantiation = reflect.Person()#实例化
f = delattr(instantiation,"exit")
f = hasattr(instantiation,"exit")
print(f)
#输出结果就是False