python可以多继承吗
python面向对象的主要好处就是代码的重用,实现这一特点通过继承,继承创建的新类成为子类,被继承的类称为父类。
如果在子类中需要父类的构造方法就需要显示的调用父类的构造方法,在调用基类的方法时,需要加上基类的类名前缀,且需要带上self参数变量。
下面我们开始来讲解继承和多继承
首先我们创建两个类,
父类:Father类子类:Child
父类中属性为money,和一个方法play(),输出
fatherplaywithme
来表示继承父类的方法。在继承的时候我们需要在子类中导入父类
父类的代码如下:
classFather(object):
def__init__(self,money):
self.money=money
print('money',money)
defplay(self):
print('fatherplaywithme')
因为孩子是继承父亲的,所以孩子类中也有money属性。所以我们直接用child来继承Father类。
child代码如下:
fromFatherimportFather
classChild(Mother,Father):
def__init__(self,money):
Father.__init__(self,money)
这个时候我们的child类就继承来自父类的属性money而且我们还继承了来自父类的方法play(),我们可以直接调用。
来验证一下
fromChildimportChild
defmain():
c=Child(100)
c.play()
if__name__=='__main__':
main()
我们从输出台可以得到money100fatherplaywithme
多继承
单继承有时候可能满足不了我们所需的所以我们就会遇到多继承,这个同样能够展示出代码的重用。
同样是上边的例子,child不仅仅是继承来自父亲,还继承来自母亲。所以我们创建mother类
classMother(object):
def__init__(self,face):
self.face=face
print('face',face)
defplay(self):
print('mothergoshoppingwithme')
mothe类创建的属性为face,其次我们还定义的一个相同的方法play是为了展示多继承中如果有相同的函数会调用哪个。
然后我们重写一下child类
fromFatherimportFather
fromMotherimportMother
classChild(Mother,Father):
def__init__(self,money,face):
Father.__init__(self,money)
Mother.__init__(self,face)
以上内容为大家介绍了Python培训之可以多继承吗,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。
相关推荐HOT
更多>>pythontemp是什么意思
python中temp是什么意思一、temp:临时文件夹。根据操作的过程进行临时保存的文件技术。python中临时文件及文件夹使用。使用的是tempfile包安装...详情>>
2023-11-14 21:32:17pythonmro是什么?
python中的mro是什么?1、概念方法解析顺序(MethodResolutionOrder,MRO)列表,它代表了类继承的顺序2、运行分析先执行C的构造器函数。执行print(...详情>>
2023-11-14 20:54:52pythonindex函数是什么
pythonindex函数是什么在我们对字符串进行检查时,大家并不需要逐个的去验证。特别是在子字符串str的检查上,我们有专门的index函数可以实现。...详情>>
2023-11-14 20:20:18pythonlist函数是什么
pythonlist函数是什么在我们使用列表转换的时候,提到了list函数的使用。其实不止是列表,只要是可迭代的数据,我们都可以通过list函数转换成列...详情>>
2023-11-14 19:48:33