我试图了解何时以及如何在 Python 中正确使用 super()(2.7.x 或 3.x)
口译员>>> help(super)
告诉我如何称呼它:
class super(object)
| super(type) -> unbound super object
| super(type, obj) -> bound super object; requires isinstance(obj, type)
| super(type, type2) -> bound super object; requires issubclass(type2, type)
我知道在 Python3.x 中现在可以在类定义中使用 super() ,但我不明白为什么super(obj)
不可能。或super(self)
在类定义中。
我知道这一定是有原因的,但我找不到。对我来说,这些行相当于super(obj.__class__, obj)
orsuper(self.__class__, self)
并且那些行得通吗?
我认为super(obj)
即使在 Python 3.x 中,仅键入也是一个不错的捷径。