如果我在Python解释器中运行以下代码:
>>> object.__dict__ is object.__dict__
False
为什么结果为False
?
答案 0 :(得分:7)
object.__dict__
不同, __dict__
会返回mappingproxy
个对象(Python 2中的dict_proxy
)。当请求__dict__
时,会立即创建 。因此,每次访问object.__dict__
时都会获得一个新代理。它们都代理相同的底层对象,但代理是一个新的代理。这就是为什么你不能得到两个相同的。