为什么“对象.__ dict__是对象.__ dict__”错误?

时间:2015-10-21 14:52:10

标签: python

如果我在Python解释器中运行以下代码:

>>> object.__dict__ is object.__dict__
False

为什么结果为False

1 个答案:

答案 0 :(得分:7)

与其他object.__dict__不同,

__dict__会返回mappingproxy个对象(Python 2中的dict_proxy)。当请求__dict__时,会立即创建 。因此,每次访问object.__dict__时都会获得一个新代理。它们都代理相同的底层对象,但代理是一个新的代理。这就是为什么你不能得到两个相同的。