python中super().__init__()
时间: 2024-06-07 17:12:23 浏览: 90
python类中super()和__init__()的区别
super().__init__() 是在Python中调用父类的构造函数的一种方式。它用于在子类的构造函数中调用父类的构造函数,以便进行一些初始化工作。
当一个类继承自另一个类时,子类可以使用super()来引用父类,并调用父类的方法或构造函数。在构造函数中调用super().__init__()会执行父类的构造函数,以便初始化父类的属性。
示例代码:
```python
class Parent:
def __init__(self, name):
self.name = name
class Child(Parent):
def __init__(self, name, age):
super().__init__(name) # 调用父类的构造函数
self.age = age
child = Child("Alice", 10)
print(child.name) # 输出 "Alice"
print(child.age) # 输出 10
```
在上面的例子中,子类Child继承自父类Parent。子类Child的构造函数中使用super().__init__(name)来调用父类Parent的构造函数,以初始化父类的属性。然后,子类Child可以添加自己的属性和方法。
这样,在创建Child实例时,会先调用父类Parent的构造函数来初始化name属性,然后再调用子类Child的构造函数来初始化age属性。
阅读全文