python类对象属性查找原理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python类对象属性查找原理相关的知识,希望对你有一定的参考价值。

class Foo(object):
    def __init__(self):
        # 这是一个对象属性
        self.obj_pro = 12

    # 这是一类属性
    c_pro = 11
    
    # 这是一个静态方法
    @classmethod
    def c_method(self):
        print(c_method)


if __name__ == __main__:
    f = Foo()
    """
     如何查找对象属性?
     就是在对象的__dict__字典去找,对象__dict__找不到,再去类__dict__里面找
    """
    print(f.__dict__)  # {‘obj_pro‘: 12}
    
    """
        类属性是在类的__dict__字典里面找的
    """
    print(Foo.__dict__)   

 

 如果还是找不到,就会调用getattr(self,item)魔法方法、

 

以上是关于python类对象属性查找原理的主要内容,如果未能解决你的问题,请参考以下文章