据我所知__dict__
in obj.__dict__
是type(obj)
的描述符属性,因此obj.__dict__
的查询是type(obj).__dict__['__dict__'].__get__(obj)
。Python如何绕过普通属性查找来查找`__dict__`?
从https://stackoverflow.com/a/46576009
人们很容易说,
__dict__
必须是一个描述符,因为 其实现为__dict__
条目将要求您找到__dict__
你可以找到__dict__
之前,但的Python已经 绕过正常的属性查找,找到__dict__
查找其他 属性的时候,所以这并不像最初 声音一样引人注目。如果描述均与 每一个__dict__
关键'__dict__'
更换,__dict__
仍然是容易找到。
“Python已经如何绕过普通属性查找找到__dict__
”? “正常属性查找”是什么意思?
根据链接中引用的上下文,我不认为作者写这篇文章时,他提到obj.__dict__
的查找是type(obj).__dict__['__dict__'].__get__(obj)
。
我注意到了@Tim,你经常为你的问题添加一个赞美的评论。虽然在与某人面对面交谈时这当然被认为是礼貌的,但它只会给Stack Overflow上的帖子增加噪音。请参阅[_Why是否有其他用户从我的问题中删除谢谢?](https://meta.stackoverflow.com/questions/328379/why-are-fellow-users-removing-thank-yous-from-my-题)了解更多详情 –
你会发现这个兴趣:https://stackoverflow.com/questions/39379351/changing-getattr-during-instantiation –