需要调用所有父类的 __init__ 方法 再换个其他的demo
时间: 2023-10-25 18:07:55 浏览: 94
好的,这里给出另一个示例:
假设我们有三个父类 `Parent1`、`Parent2`、`Parent3`,以及一个子类 `Child`,需要在 `Child` 中重写 `__init__` 方法,实现方式如下:
```python
class Parent1:
def __init__(self, arg1):
self.arg1 = arg1
class Parent2:
def __init__(self, arg2):
self.arg2 = arg2
class Parent3:
def __init__(self, arg3):
self.arg3 = arg3
class Child(Parent1, Parent2, Parent3):
def __init__(self, arg1, arg2, arg3, arg4):
super().__init__(arg1)
super().__init__(arg2)
super().__init__(arg3)
self.arg4 = arg4
```
在 `Child` 的 `__init__` 方法中,我们依次调用了 `Parent1`、`Parent2`、`Parent3` 的 `__init__` 方法,最后再初始化 `Child` 自己的属性 `arg4`。这样就保证了所有父类的属性都被正确初始化。需要注意的是,调用 `super().__init__` 方法时,参数要与父类的 `__init__` 方法的参数保持一致。
阅读全文