参考https://www.runoob.com/python/python-func-super.html 加以解释

class FooParent(object):def __init__(self):self.parent = "I am the parent."print('Parent')def bar(self, message):print("%s from Parent" % message)class FooChild(FooParent):def __init__(self):super(FooChild, self).__init__()print('Child')def bar(self,message):# 调用父类的bar方法super(FooChild, self).bar(message)print('Child bar function')# 打印父类的parentprint(self.parent)if __name__ == '__main__':fooChild = FooChild()# fooChild.bar('HelloWorld')# 不实例化调用# FooChild().bar('Hello World')

结果

子类和父类实例化所答打印的
Parent
Child
父类的bar方法打印
HelloWorld from Parent
子类bar方法打印
Child bar function
父类初始化所给parent变量赋值
I am the parent.
class A():def __init__(self):print('enter A')print('leave A')class B(A):def __init__(self):print('enter B')super().__init__()print('leave B')class C(A):def __init__(self):print('enter C')super().__init__()print('leave C')class D(B, C):def __init__(self):print('enter D')super().__init__()print('leave D')d = D()

结果

enter D
enter B
enter C
enter A
leave A
leave C
leave B
leave D

python 中super方法的调用相关推荐

  1. Python中super()函数简介及用法分享

    首先看一下super()函数的定义: super([type [,object-or-type]]) Return a **proxy object** that delegates method c ...

  2. python中new方法详解及_Python中new方法的详解

    new_ 方法是什么? __new__方法其实就是创建对象的方法 new()方法是在类准备将自身实例化时调用. 一个类可以有多个位置参数和多个命名参数,而在实例化开始之后,在调用 init()方法之前 ...

  3. python isalnum函数_探究Python中isalnum()方法的使用

    探究Python中isalnum()方法的使用 isalnum()方法检查判断字符串是否包含字母数字字符. 语法 以下是isalnum()方法的语法: str.isa1num() 参数 NA 返回值 ...

  4. python中file方法

    文章目录 一.python中file方法 总结 一.python中file方法 open() 方法 Python open() 方法用于打开一个文件,并返回文件对象. 在对文件进行处理过程都需要使用到 ...

  5. python中eval方法的妙用

    python中eval方法的妙用 python中eval的妙用 python中eval的妙用 对于python中的eval函数,通常就知道是一个计算函数,比如: eval("111" ...

  6. Python中__init__方法有什么作用

    Python中__init__方法有什么作用 当使用类名()的方法去创建对象的时候 python解释器会自动调用__init__方法 因此可以在__init__方法中做一些初始化的设定 在每次创建新对 ...

  7. python方法重载_关于类:如何在Python中使用方法重载?

    我尝试在python中实现方法重载: class A: def stackoverflow(self): print 'first method' def stackoverflow(self, i) ...

  8. Python中的方法名前加下划线

    在Python中,方法名前加下划线通常有以下几种用法和约定: 单个前导下划线(_methodName):这是一种约定,用于指示该方法是类的内部使用方法,应该被视为私有方法.虽然在语法上并没有强制限制, ...

  9. python中repr方法_Python中的常见特殊方法—— repr方法

    在Python中有些方法名.属性名的前后都添加了双下划线,这种方法.属性通常都属于Python的特殊方法和特殊属性,开发者可以通过重写这些方法或者直接调用这些方法来实现特殊的功能.其实前面见过的构造方 ...

最新文章

  1. 【转】Go 语言教程(2)——表达式
  2. 【论文解读】ICDM2020 | 挖掘异构图中的层级结构
  3. ASP+MSSQL注入工具 web版 beta 3 final release
  4. [Shder]物体溶解效果
  5. 54.get set
  6. Qt文档阅读笔记-Rotations Example相关
  7. 7-20 打印九九口诀表 (15 分)
  8. Java序列化的这三个坑千万要小心
  9. 设计师所需图标素材网站,不用到处找了,都在这!
  10. 简单的python案例_实现的简单python例子
  11. linux sata硬盘热交换,学员原创-杨欢最详细西数硬盘热交换流程
  12. lwj_C#_方法重载,递归,构造
  13. 王珞丹用手写传递情感 字体入库笔尖上的中国
  14. U盘未分配空间合并——U盘分区扩展卷为灰色的
  15. 详细描述Tomcat体系结构(图文并茂)
  16. 深度deepin更新失败升级失败
  17. Rust权威指南 全书笔记
  18. python 中文转带音调的拼音
  19. 小程序源码:朋友圈集赞万能截图生成器微信小程序源码下载
  20. matlab建立rbf网络,大家看一下,这组数据Matlab如何构建RBF神经网络!!!!

热门文章

  1. python扫描目录下文件_Python扫描目录读取文件,不考虑子目录
  2. java 源码分析_Java 源代码编译成 Class 文件的过程分析
  3. math.hypot java_Java Math.hypot() 方法
  4. vscode更改编码_装上后这 10个扩展后,VSCode 真的是无敌的存在
  5. html5指南针源码,《绝秘奉献》——最新超短线指南针!源码已放!(贴图 原码)...
  6. mysql的语句分类,查询、子查询及连接查询
  7. 【深度学习】详解Resampling和softmax模型集成
  8. 使用JDK工具生成SSL证书(网站https访问)
  9. Json数据发布到Tomcat本地服务器
  10. linux 调试引导程序,c-调试syslinux看到的引导文件系统环境?