登录  /  注册

如何让Python继承多个类?一文读懂Python类的继承

Tomorin
发布: 2018-08-14 17:13:06
原创
4200人浏览过

面向对象的编程带来的主要好处之一是代码的重用,实现这种重用的方法之一是通过python类的继承并且在此基础上衍生出让python继承多个类的方法。

通过Python类的继承创建的新类称为子类派生类,被继承的类称为基类父类超类

继承语法:

class 派生类名(基类名)
    ...
登录后复制

实例

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 class Parent:        # 定义父类
   parentAttr = 100
   def __init__(self): 
        print "调用父类构造函数"
 
   def parentMethod(self): 
        print '调用父类方法'
 
   def setAttr(self, attr):
        Parent.parentAttr = attr
 
   def getAttr(self): 
        print "父类属性 :", Parent.parentAttr
 class Child(Parent): # 定义子类
   def __init__(self): 
        print "调用子类构造方法"
 
   def childMethod(self): 
        print '调用子类方法'
 c = Child()          # 实例化子类
 c.childMethod()        # 调用子类的方法
 c.parentMethod()        # 调用父类方法
 c.setAttr(200)         # 再次调用父类的方法 - 设置属性值
 c.getAttr()          # 再次调用父类的方法 - 获取属性值
登录后复制

以上代码执行结果如下:

调用子类构造方法
调用子类方法
调用父类方法
父类属性 : 200
登录后复制

对类的继承的延伸:Python继承多个类

class A:        # 定义类 A
.....
class B:         # 定义类 B
.....
class C(A, B):      # 继承类 A 和 B
.....
登录后复制

你可以使用issubclass()或者isinstance()方法来检测。

issubclass() - 布尔函数判断一个类是另一个类的子类或者子孙类,语法:issubclass(sub,sup)

isinstance(obj, Class) 布尔函数如果obj是Class类的实例对象或者是一个Class子类的实例对象则返回true。

以上就是如何让Python继承多个类?一文读懂Python类的继承的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号