在 Python 的文档中,在__getattr__
函数上它说:
请注意,如果通过正常机制找到该属性,则不会调用 __getattr__()。(这是 __getattr__() 和 __setattr__() 之间的故意不对称。)这样做是出于效率原因,并且因为否则 __getattr__() 将无法访问实例的其他属性。
我在理解最后一条语句时遇到问题:
将无法访问实例的其他属性
它究竟如何无法访问其他属性?(我想它与无限递归有关,但没有其他方法可以访问实例属性,比如直接访问self.__dict__
?)