我们应该 "super()" 在基础 class 吗?
Should we "super()" in base class?
在Python3中我使用继承自classes的super如下:
class Orange(Fruit):
def __init__(self):
super().__init__()
在上面的代码片段中 Orange
class 继承自 Fruit
class。看看父class
class Fruit():
def __init__(self):
pass # call super().__init__() here?
我们是否需要从 parent/base class 调用 super 才能使 MRO 有效工作?
不,在 Python 中没有必要在 super
上为基数 类 调用 __init__
并且 MRO 仍将正确初始化
在Python3中我使用继承自classes的super如下:
class Orange(Fruit):
def __init__(self):
super().__init__()
在上面的代码片段中 Orange
class 继承自 Fruit
class。看看父class
class Fruit():
def __init__(self):
pass # call super().__init__() here?
我们是否需要从 parent/base class 调用 super 才能使 MRO 有效工作?
不,在 Python 中没有必要在 super
上为基数 类 调用 __init__
并且 MRO 仍将正确初始化