【发布时间】:2018-01-02 18:50:24
【问题描述】:
在 Python 的文档中,__class__ 被描述为一个属性。在对象type(元类)中,__class__ 似乎是一个方法。
如果我们这样做:
>>> class Foo:
pass
>>> a = Foo()
>>> a.__class__ == type.__class__(a)
True
所以,我的问题是:
- 当我们调用
a.__class__时,我们真的调用了type.__class__(a)方法吗? - 这就是
__class__不是a的__dict__属性成员的原因吗?
【问题讨论】:
标签: python python-3.x types python-internals object-model