本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
1、说明
如果初始化函数中的属性不是私有的话,是不会报错的。但是私有属性一定会报错,因为私有属性是无法继承的。为了让它不报错,就可以用到 super 了。
如果继承父类,那么定义在父类 __init__ 中的相同的属性会覆盖子类中的。
如果父类含有一个带参数的初始化方法的时候,子类一定需要一个初始化方法,并且在初始化方法中调用父类的初始化方法。
2、实例
class Base: def __init__(self, a, b): self.__a = a self.__b = b def sum(self): return self.__a + self.__b class Sub(Base): def __init__(self, a, b, c): self.c = c # 直接调用父类的初始化方法 super().__init__(a, b) >>> Sub(1, 2, 3).sum() Out[6]: 3
以上就是python带参数__init__的使用,希望能对大家有所帮助。更多Python学习指路:python基础教程