super().__init__()用法

本文介绍了Python中super().__init__()的用法,主要用于在子类中调用父类的构造函数。当子类需要继承父类的初始化内容并添加新的属性时,可以使用该方法。文中通过实例代码解释了如何传递参数以及如何处理父类中有默认值的参数,并讨论了在子类中重写属性后再调用super().__init__()的情况。
摘要由CSDN通过智能技术生成

优先阅读:这个是我这个菜鸟自己理解的,误导别人概不负责~哈哈哈哈哈哈哈

一、何时要使用super.__init__():

  我理解是,当需要继承父类构造函数中的内容,且子类需要在父类的基础上补充时,使用super().__init__()方法。

在这段代码中,New_person这个类即需要用到父类中name和age,又需要新增sex这个参数。这时就需要用到super().__init__()来继承父类中的name,和age。super().__init__()其实就是一个调用父类中__init__的函数。由于父类中的init有两个参数,所以super().__init__()也要传两个参数。

通过子类中的__init__函数获取到传的参数,并传给父类,如图中的传值关系。

当父类中的参数带有默认值时,super().__init__()调用父类中__init__也可以不传值(或传self),由于传值时self是可以省略的,所以写或不写结果是一样的。self在子类中代表子类本身,把self传到super().__init__()函数中,代表子类的__init__函数中的内容传给了父类。

只不过是通过子类中重写后传到父类中的。既然已经在子类中重写了self.name 、self.age、self.sex,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值