Python __dict__

__dict__用来查看类或对象的成员
类的__dict__保存了普通方法(test),类方法(class_test),静态方法(static_test),全局变量(a,b),内置方法和属性(双下划线的)
对象的__dict__保存了__init__()方法里的属性,既self.xx

class A(object):
    a = 0
    b = 3

    def __init__(self):
        self.a = 2
        self.c = 1

    def test(self):
        print('normal func.')

    @staticmethod
    def static_test(self):
        print('static func.')

    @classmethod
    def class_test(self):
        print('calss func.')

obj = A()

print (A.__dict__) # {'__module__': '__main__', '__doc__': '\n    Class A.\n    ', 'a': 0, 'b': 3, '__init__': <function A.__init__ at 0x0000022BAC955730>, 'test': <function A.test at 0x0000022BAC9557B8>, 'static_test': <staticmethod object at 0x0000022BAC953C88>, 'class_test': <classmethod object at 0x0000022BAC953CF8>, '__dict__': <attribute '__dict__' of 'A' objects>, '__weakref__': <attribute '__weakref__' of 'A' objects>}


print (obj.__dict__) # {'a': 2, 'c': 1}

2.继承中的__dict__
1)每个类的类变量都放在自己的__dict__,即使被重写
2)每个类实例化的对象的__dict__是相同的

参考:
https://www.cnblogs.com/alvin2010/p/9102344.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值