我知道您在重新定义setattr方法时应该注意,您可能会以循环结束。
我知道有两种解决方案可以避免循环:
1)使用对象超类,调用:
object.__setattr__(instance,attr,value)
2)使用类字典:
self.__dict__[attr] = value
我的问题是,__dict__
解决方案不应该也陷入循环吗?为什么不是?
是因为我们这样称呼对象(一切都是对象)还是什么__setattr__
?__dict__
如果是这样,它不应该对所有事情都一样吗?