百木园-与人分享,
就是让自己快乐。

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

来源:https://www.cnblogs.com/python1111/p/16769277.html
本站部分图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » python学习:反射的四种基本方法

相关推荐

  • 暂无文章