__dict__
python中默认情况下,每一个类都会有 __dict__这个属性,我们可以通过dir 来查看类结构
>>> class T(object):
pass
>>> dir(T)
['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__',
'__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__',
'__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__']
第一行的第三个 就是 __dict__,这个实际上是一个 dict类型的数据,用来存放每一个实例属性的名字以及属性的值
>>> b = T()
>>> b.__dict__ #此时实例中没有绑定属性
{}
>>> b.name = 1 #绑定属性