您的位置:威尼斯官方网站 > 威尼斯正规官网 > 【威尼斯官方网站】  传入不同的字符串

【威尼斯官方网站】  传入不同的字符串

发布时间:2019-11-06 21:42编辑:威尼斯正规官网浏览(152)

    getattr()那些艺术最关键的功效是落到实处反射机制。也正是说能够由此字符串获取情势实例。  传入区别的字符串,调用的法子不肖似。

    原型:getattr(对象,方法名)
    

     

    举个栗子:

    pyMethod类下定义了多少个法子,getattr(pyMethod(),'out%s'%str)()   传入的艺术名不一致,调用区别的不二等秘书籍。些处方法名叫字符串。

    那样的话,出主意是否用处超级多,笔者能够把艺术名配置到文件中,读取时接纳getattr动态去调用。

    #coding=utf-8
    
    class pyMethod(object):
        def outstr(self):
            print('this is string')
    
        def outint(self):
            print('this is number')
    
        def outdate(self):
            print('this is date')
    
    
    if __name__=="__main__":
        str = 'int'
        getattr(pyMethod(),'out%s'%str)()     
        str = 'str'
        getattr(pyMethod(),'out%s'%str)()
        str = 'date'
        getattr(pyMethod(),'out%s'%str)()
    

     

     getattr(pyMethod(),'out%s'%str)()  注意pyMethod()和最后的()   这里之所以这么写pyMethod()加括号是实例化类对象,最后的括号,因为getattr函数反射后,是一个方法对象。
    

     

    运作结果:

    C:Python27python.exe D:/weixin/python_getattr.py
    this is number
    this is string
    this is date
    
    Process finished with exit code 0
    

     

    Linux and python学习调换1,2群已满.

    Linux and python学习沟通3群新开,款待参与,一同学习.qq 3群:563227894

    不前行,不倒退,甘休的气象是从未的.

    同步前进,与君共勉,

    本文由威尼斯官方网站发布于威尼斯正规官网,转载请注明出处:【威尼斯官方网站】  传入不同的字符串

    关键词:

上一篇:casefold()方法是Python3.3版本之后引入的

下一篇:没有了