• D 的类的顺序的是[D,B,A,C]
  • 继承父类的的__init__方法在在类A中已经到终点,
    A.mro()
    Out[368]: [main.A, object],所以C不再执行
class A:def __init__(self):print('A')class B(A):def __init__(self):print('B')super().__init__()
class C:def __init__(self):print('C')super().__init__()
class D(B,C):def __init__(self):print('D')super().__init__()
d = D()print(D.mro())
D
B
A
[<class '__main__.D'>, <class '__main__.B'>, <class '__main__.A'>, <class '__main__.C'>, <class 'object'>]

  • 很简单当我们转换B,C的位置,类继承的顺序是[D,C,B,A],因为C中有
    super().init(),指向B,我们看到 都执行了
class A:def __init__(self):print('A')class B(A):def __init__(self):print('B')super().__init__()
class C:def __init__(self):print('C')super().__init__()
class D(C,B):def __init__(self):print('D')super().__init__()
d = D()print(D.mro())
D
C
B
A
[<class '__main__.D'>, <class '__main__.C'>, <class '__main__.B'>, <class '__main__.A'>, <class 'object'>]

super().__init__()理解(三)相关推荐

  1. python中super().__init__()

    文章目录 super().__ init__ ()有什么用? 1.分别理解super()和 __ init __() 1.1.super() 1.2.__ init __() 1.3.super(). ...

  2. 为什么通常在类的init函数下一行写super().__init__()?==>就是执行父类的构造函数,使得我们能够调用父类的属性

    我们通常看到 那么这一行代码的意义是什么呢? 实例: class Root(object):def __init__(self):self.x = '这是属性'def fun(self):print( ...

  3. def __init__(self)是什么意思_子类必须调用 super().__init__() 吗?

    我新开了专栏 <恍然大明白>,如果关注 Python 底层实现,请移步 恍然大明白​www.zhihu.com 今天遇到一个有意思的问题,小组一位小哥在开发中,遇到了传说中的 " ...

  4. ElasticSearch 深入理解 三:集群部署设计

    ElasticSearch 深入理解 三:集群部署设计 ElasticSearch从名字中也可以知道,它的Elastic跟Search是同等重要的,甚至以Elastic为主要导向. Elastic即可 ...

  5. python super().__init__()_python——多继承使用super().__init__ 发生的状态

    print("******多继承使用super().__init__ 发生的状态******") class Parent(object): def __init__(self, ...

  6. 由pytorch中的super().__init__到python中的测试

    最近看一些pytorch一些大佬写的代码太规范,一个类中套一个类,只会简单语法的小白表示一头雾水,自己编了一个小代码验证一下,不喜勿扰. code class grandfather(): #超类de ...

  7. Java this, super深入理解

    This 第一.通过this调用另一个构造方法,用发是this(参数列表),这个仅仅在类的构造方法中,别的地方不能这么用. 第二.函数参数或者函数中的局部变量和成员变量同名的情况下,成员变量被屏蔽,此 ...

  8. dropout理解(三)

    本节使用的pytorch版本为1.8.1,其中的torch.nn.functional函数中的dropout方法中的参数training默认为True: 下面进入正文,首先创建一个简单的模型: imp ...

  9. 一分钟理解三次握手和四次挥手

    注:三次握手和四次挥手本身并不复杂,但却可以从很多角度理解这两个过程,本文仅取一个比较有趣的视点解释 为什么要三次握手? 答:三次握手的目的是建立可靠的通信信道,说到通讯,简单来说就是数据的发送与接收 ...

最新文章

  1. javascript数字验证(转)
  2. 【安卓开发】Webview简单使用
  3. sony微型计算机,舍我其谁?只有SONY做得到!
  4. lesson 2.4 - Converting MEL Commands to Python
  5. 栈的应用(进制转换)
  6. 鹰式价差matlab,期权的价差(2):比例价差、圣诞树型价差
  7. 咱用AppDesigner开发复现了一款我国古老的桌游 —【升官图】
  8. java qq协议 php_Java基于JavaMail实现向QQ邮箱发送邮件
  9. 关于bootstrapValidator 表单校验remote出现两次重复提交才能验证通过问题处理
  10. java 月初_Java用于取得当前日期相对应的月初,月末,季初,季末,年初,年末时间...
  11. 五一南京-无丝竹无案牍
  12. 北上广等一线城市IT岗位已接近饱和?
  13. 360网站卫士php-dos,360网站卫士的CDN缓存加速功能详解
  14. qq好友发聚会照片html,在QQ朋友聊天页面上点击发送图片,打开后怎么同时可以点击几张图片一次性发送,...
  15. GEE|导出到google drive的文件太大,每次下载都中断的解决方法
  16. SQL语句中的USING用法
  17. 百度语音识别之拼音识别
  18. cocos creator游戏发布和部署-HTML5篇
  19. 两款移相振荡器的对比
  20. 信息熵:什么是信息熵?

热门文章

  1. 理一理Latency、Bandwidth、Throughput、Response Time概念的区别
  2. 数据恢复专业基础之python解释NTFS runlist的代码
  3. FTP linux-500 OOPS问题解决 (转载)
  4. 公司的实战Replica Sets+Sharding方案
  5. javascript(arguments)
  6. jquery技巧(持续更新。。)
  7. apache的prefork和workder模式
  8. Web数据库:信息化持续改善的最佳工具
  9. 我要做一个合格的网络工程师
  10. 一个人最重要的是跌倒了爬起来的能力