zoukankan      html  css  js  c++  java
  • python类的反射使用方法

    曾经,博主的房东养了只金毛叫奶茶,今天就拿它当议题好了。

    博主写本文时正在被广州的蚊子围攻。

    #反射练习
    
    class animal(object):
        def __init__(self,name,fool):
            self.name = name
            self.fool = fool
        def dog(self):
            print("This is %s,it's a dog.it eat %s"%(self.name,self.fool))
    
    
    d = animal("奶茶","meat")
    anml_name = "dog"
    
    #getattr(),用于判断类中是否包含有某方法,如果有相应的方法则会返回类方法的内存地址,加()调用类方法
    if getattr(d,anml_name):
        c = getattr(d,anml_name)
        c()
    #hasattr()用于判断类中是否包含某方法,如果有这个方法就返回True,没有则返回False
    print(hasattr(d,anml_name))
    print(hasattr(d,"abc"))
    
    #setattr设置属性值,属性必须存在
    setattr(d,'name',"simb")
    print("奶茶改名叫:%s"%d.name)
  • 相关阅读:
    第二周作业
    7-2 求最大值及其下标
    第十一周作业
    第九周编程总结
    第八周作业
    第七周作业
    第六周作业
    第五周作业
    第4周作业
    第三周作业
  • 原文地址:https://www.cnblogs.com/shangmo/p/8724626.html
Copyright © 2011-2022 走看看