关于Python(ic)继承的快速问题:成语posted here(super(ChildClass,self).method(args)
)与Python docs site(ParentClass.method(self,[args])
)上的成语有什么区别?是Pythonic还是另一个吗?
答案 0 :(得分:4)
使用super(ChildClass, self).method(args)
可以让您按照方法解析顺序进行操作 - 如果除最后一个父级之外的所有人都使用super
- 只需调用层次结构中的每个类一次。 (并非super
仅适用于新式类。)
使用ParentClass.method(self, args)
调用一个特定的类。它涉及多重继承时不起作用。
This article提供了该问题的一些描述,并为某些人澄清了许多问题。我不同意其所有结论,但它提供了很好的例子和讨论。