我想了解__getattr__和__getattribute__之间的区别,但是,我失败了。 堆栈溢出问题getattr与getattribute之间的区别说, 在查看对象上的实际属性之前调用__getattribute__ ,因此可能会很难正确实现。 你可以很容易地在无限的recursion结束。 我完全不知道这意味着什么。 然后它继续说: 你几乎肯定希望__getattr__ 。 为什么? 我读过,如果__getattribute__失败, __getattr__被调用。 那么为什么有两种不同的方法做同样的事情呢? 如果我的代码实现了新的风格类,我应该使用什么? 我正在寻找一些代码示例来清除这个问题。 我已经尽力search到了,但是我find的答案并没有彻底讨论这个问题。 如果有任何文件,我准备阅读。
我想了解何时使用__getattr__或__getattribute__ 。 文档中提到__getattribute__适用于新风格的类。 什么是新式课程?