python多继承(钻石继承)问题和解决方法简单示例


Posted in Python onOctober 21, 2019

本文实例讲述了python多继承(钻石继承)问题和解决方法。分享给大家供大家参考,具体如下:

在菱形多继承中,如果用父类.__init__()来调用父类的初始化方法,最上层会执行两次,所以遇到这种情况,python中用super.__init__()来解决这个问题。

# -*- coding:utf-8 -*-
#! python3
class Grand_father(object):
  def __init__(self):
    print('爷爷')
class Father_left(Grand_father):
  def __init__(self):
    super(Father_left,self).__init__()
    # Grand_father.__init__(self)
    print('左边爸爸')
class Father_right(Grand_father):
  def __init__(self):
    super(Father_right, self).__init__()
    # Grand_father.__init__(self)
    print('右边爸爸')
class Me(Father_right,Father_left):
  def __init__(self):
    super(Me, self).__init__()
    # Father_left.__init__(self)
    # Father_right.__init__(self)
    print('我')
def main():
  me = Me()
if __name__ == '__main__':
  main()

运行结果:

爷爷
左边爸爸
右边爸爸

如果需要调用左边爸爸,那就执行super(右边爸爸类).

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python3基础之输入和输出实例分析
Aug 18 Python
python实现将文本转换成语音的方法
May 28 Python
Tensorflow环境搭建的方法步骤
Feb 07 Python
Python数据分析之双色球基于线性回归算法预测下期中奖结果示例
Feb 08 Python
pandas.dataframe中根据条件获取元素所在的位置方法(索引)
Jun 07 Python
python3.6使用urllib完成下载的实例
Dec 19 Python
详解用Python实现自动化监控远程服务器
May 18 Python
Python values()与itervalues()的用法详解
Nov 27 Python
Python操作redis和mongoDB的方法
Dec 19 Python
在django项目中导出数据到excel文件并实现下载的功能
Mar 13 Python
Python基于内置函数type创建新类型
Oct 22 Python
python实现网络五子棋
Apr 11 Python
python超时重新请求解决方案
Oct 21 #Python
详解python中*号的用法
Oct 21 #Python
python中bytes和str类型的区别
Oct 21 #Python
python中@property和property函数常见使用方法示例
Oct 21 #Python
vim自动补全插件YouCompleteMe(YCM)安装过程解析
Oct 21 #Python
基于python解线性矩阵方程(numpy中的matrix类)
Oct 21 #Python
python打印直角三角形与等腰三角形实例代码
Oct 20 #Python
You might like
php获取通过http协议post提交过来xml数据及解析xml
2012/12/16 PHP
PHP设计模式之迭代器模式的深入解析
2013/06/13 PHP
PHP判断手机是IOS还是Android
2015/12/09 PHP
Yii中创建自己的Widget实例
2016/01/05 PHP
PHP的垃圾回收机制代码实例讲解
2021/02/27 PHP
javascript Prototype 对象扩展
2009/05/15 Javascript
jquery ajax 检测用户注册时用户名是否存在
2009/11/03 Javascript
jquery禁止输入数字以外的字符的示例(纯数字验证码)
2014/04/10 Javascript
jquery 实现input输入什么div图层显示什么
2014/06/15 Javascript
JavaScript遍历table表格中的某行某列并打印其值
2014/07/08 Javascript
js进行表单验证实例分析
2015/02/10 Javascript
Bootstrap多级导航栏(级联导航)的实现代码
2016/03/08 Javascript
jquery动态切换背景图片的简单实现方法
2016/05/14 Javascript
jQuery实现广告条滚动效果
2017/08/22 jQuery
Vue2.0学习系列之项目上线的方法步骤(图文)
2018/09/25 Javascript
小程序获取周围IBeacon设备的方法
2018/10/31 Javascript
详解滑动穿透(锁body)终极探索
2019/04/16 Javascript
微信小程序-API接口安全详解
2019/07/16 Javascript
一篇文章弄懂javascript中的执行栈与执行上下文
2019/08/09 Javascript
Python解惑之True和False详解
2017/04/24 Python
Django给admin添加Action的步骤详解
2019/05/01 Python
django框架基于模板 生成 excel(xls) 文件操作示例
2019/06/19 Python
利用Python实现kNN算法的代码
2019/08/16 Python
Django项目使用ckeditor详解(不使用admin)
2019/12/17 Python
TensorFlow实现指数衰减学习率的方法
2020/02/05 Python
Python 找出出现次数超过数组长度一半的元素实例
2020/05/11 Python
One.com挪威:北欧成长最快的网络托管公司
2016/11/19 全球购物
Kneipp克奈圃美国官网:德国百年精油配方的传承
2018/02/07 全球购物
历史系自荐信范文
2013/12/24 职场文书
公司道歉信范文
2014/01/09 职场文书
见习期自我鉴定范文
2014/03/19 职场文书
保护黄河倡议书
2014/05/16 职场文书
工会工作先进事迹
2014/08/18 职场文书
2014年副班长工作总结
2014/12/10 职场文书
先进个人推荐材料
2014/12/29 职场文书
python装饰器代码解析
2022/03/23 Python