位置: 编程技术 - 正文

python类中super()和__init__()的区别(python类中的函数必须加self吗)

编辑:rootadmin

推荐整理分享python类中super()和__init__()的区别(python类中的函数必须加self吗),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python类中包含一个特殊的变量,它可以访问类的成员,python类中包含一个特殊的变量,它可以访问类的成员,python类中包含一个特殊的变量,它可以访问类的成员,python类中定义全局变量,python类中定义全局变量,python类中的self代表什么,python类中的self代表什么,python类中的self代表什么,内容如对您有帮助,希望把文章链接给更多的朋友!

单继承时super()和__init__()实现的功能是类似的

输出结果:

区别是使用super()继承时不用显式引用基类。

super()只能用于新式类中

把基类改为旧式类,即不继承任何基类

执行时,在初始化b时就会报错:

super不是父类,而是继承顺序的下一个类

在多重继承时会涉及继承顺序,super()相当于返回继承顺序的下一个类,而不是父类,类似于这样的功能:

mro()用来获得类的继承顺序。

例如:

输出结果如下:

supder和父类没有关联,因此执行顺序是A —> B—>—>Base

python类中super()和__init__()的区别(python类中的函数必须加self吗)

执行过程相当于:初始化childC()时,先会去调用childA的构造方法中的 super(childA, self).__init__(), super(childA, self)返回当前类的继承顺序中childA后的一个类childB;然后再执行childB().__init()__,这样顺序执行下去。

在多重继承里,如果把childA()中的 super(childA, self).__init__() 换成Base.__init__(self),在执行时,继承childA后就会直接跳到Base类里,而略过了childB:

从super()方法可以看出,super()的第一个参数可以是继承链中任意一个类的名字,

如果是本身就会依次继承下一个类;

如果是继承链里之前的类便会无限递归下去;

如果是继承链里之后的类便会忽略继承链汇总本身和传入类之间的类;

比如将childA()中的super改为:super(childC, self).init(),程序就会无限递归下去。

如:

super()可以避免重复调用

如果childA基础Base, childB继承childA和Base,如果childB需要调用Base的__init__()方法时,就会导致__init__()被执行两次:

Base的__init__()方法被执行了两次

使用super()是可避免重复调用

以上所述是小编给大家介绍的python类中super()和__init__()的区别,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对积木网网站的支持!

Python首次安装后运行报错(0xcb)的解决方法 错误提示如下:其实这是一个挺常见的系统报错,缺乏VC++库。我安装的是python3.5.2,这个版本需要的vc版本是的了,下载:MicrosoftVisualC++安装完后

Python做文本按行去重的实现方法 文本:每行在promotion后面包含一些数字,如果这些数字是相同的,则认为是相同的行,对于相同的行,只保留一行。思路:根据字典和字符串切割。建

windows下ipython的安装与使用详解 ipython的安装ipython可以直接使用pipinstallipython安装,如果安装失败按如下步骤手动进行安装所需文件下载:链接:

标签: python类中的函数必须加self吗

本文链接地址:https://www.jiuchutong.com/biancheng/384432.html 转载请保留说明!

上一篇:Python 序列的方法总结(python中序列)

下一篇:Python首次安装后运行报错(0xc000007b)的解决方法(python安装后怎么用)

  • 自来水水费增值税发票票样
  • 平价转让股权如何做
  • 个人所得缴税租房减免该怎么弄?
  • 中税协网站怎样补学时
  • 一般纳税人公司抵扣
  • 预收账款转营业外收入账务处理
  • 财务怎么算社保缴费
  • 小规模纳税人进项发票怎么做账
  • 房地产企业简易计税
  • 预付账款余额怎么算
  • 子公司注销欠母公司借款怎么办
  • 已抵扣发票红冲后发票还给对方公司
  • 勾选发票必须当月认证吗
  • 被吊销营业执照的公司如何注销
  • 收汇结汇的账务处理
  • 三金一费包括哪些
  • 一般企业可以开检测费吗
  • 计算所得税时扣除增值税附加怎么算
  • abs付款是现金吗
  • 交换房产土地如何交税
  • 代扣税款手续费管理办法
  • win10双屏怎么切换屏幕
  • windows10无法打开此类型的文件(.exe)
  • 劳务报酬必须要和工资申报吗
  • 转账凭证摘要怎么写原材料的
  • 已计提折旧怎么计算
  • 独资子公司如何注册
  • 怎么登记总分类账簿
  • 工业厂房修建需要哪些手续
  • 财政应返还额度是什么意思?
  • 借条丢了怎么办打电话给家长
  • 纳税申报方式的税务申报工作常规流程图
  • 黑马程序员前端工程师简历
  • PHP/HTML混写的四种方式总结
  • 税控盘是什么样子的
  • 施工企业如何开发票
  • php遍历数组使用的是foreach
  • vue实现路由跳转传参
  • 微信小程序父子通信
  • js let用法
  • python爬虫中数据接口的含义
  • python3 字典遍历
  • index.php备份文件名
  • php防盗链
  • 费用报销重复了怎么写情况说明
  • mybatis拦截器执行顺序
  • mysql 子表
  • 会务费什么企业可以开
  • 税率减按1.5%计算是什么意思
  • 个税年度汇算清缴总结
  • 金税四期主要监控的内容
  • 差旅费报销原因
  • 进项税转出如何结转
  • 公司借款如何做账务处理
  • 增值税达不到税负怎么办
  • 工资代扣工会会费协议
  • 年终建账于年初建账,在录入期初余额时有什么不一样?
  • 物流行业货币资金占比
  • win10手机版下载官方中文版
  • xp系统一直在启动界面怎么办
  • 开源镜像是什么意思
  • 进入注册表的快捷键
  • centos删除vg
  • win8 网络连接
  • win1020h2累积更新
  • 每日十条简短新闻
  • 置顶聊天折叠怎么开启
  • 信号监控设备是什么
  • javascript创建对象的几种方法
  • node.js中的http.createServer方法使用说明
  • Windows上安装Python
  • Shell脚本统计文件行数
  • python多线程菜鸟教程
  • python编写步骤
  • android怎么运行
  • 厂房每年要交什么费用
  • 江西省税务局12366
  • 白酒消费税应纳税额
  • 烟台税务系统缴费
  • 党建税收宣传
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设