位置: 编程技术 - 正文

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安装后怎么用)

  • 个人所得税应纳税额怎么计算
  • 财务软件增值税
  • 税收管辖权是什么的重要组成部分
  • 增值税销项税额和进项税额
  • 境外公司汇款给境内个人
  • 个税漏申报了一个月在哪里申报
  • 财务费用中的汇兑收益增加的原因
  • 医疗器械商贸企业成本核酸
  • 工会签约有什么好处
  • 个人互换住房土地增值税
  • 公司转让注册资金怎么弄
  • 会计中借方和贷方怎么理解
  • 支付给客户的货款叫什么
  • 对方电子承兑发出多长时间可以到账
  • 代扣代缴个税手续费返还怎么操作
  • 营改增后建筑行业税率
  • 新政出台
  • 增值税普通发票可以抵扣吗
  • 出租房产业务企业所得税如何处理?
  • 辅导期纳税人预缴增值税
  • 出售子公司全部股权的股权账务处理
  • 企业转让土地使用权交什么税
  • 捐赠固定资产资产处置损益
  • 其他应收款注销时处理
  • 王者荣耀中张飞的台词
  • 以前年度应付账款转收入
  • iphone助手
  • executor进程
  • php数组函数输出《咏雪》里有多少"片"字
  • PHP:oci_field_scale()的用法_Oracle函数
  • 耕地开垦费计入土地成本吗
  • 微信小程序完美修真攻略
  • 魅族路由器mini说明书
  • 律师费怎样入账
  • 报错专业怎么补救
  • 短期借款利息有可能资本化处理,也可能费用化处理
  • 年末本年利润怎么结转
  • 农民工工资专用账户打款比例
  • 快递破损后赔偿还能把东西拿走吗
  • 帝国cms灵动标签 PHP变量文章ID加减1
  • Python可变数据类型和不可变数据类型
  • 原值净值怎么算
  • 发票上的抵扣联抵扣联是什么意思
  • 海关缴款书上完税价格含增值税吗
  • 财务报表的组成主要包括
  • 进项加计抵扣
  • 预缴税金用于抵减税费
  • 电脑入账如何做凭证
  • 一次性医疗补助金怎么计算
  • 完工不拨付工程款怎么处理
  • 补缴的增值税可以抵扣吗
  • 印花税的减免
  • 文化事业费的费率是多少?
  • 不是企业职工能否挂靠企业交社保
  • 以前年度损益调整结转到哪里
  • 公司注销固定资产清理怎么做账务处理
  • 怎样计算存款利息?
  • sqlserver存储过程返回多个结果集
  • nvidia专业卡性能对比
  • windows7怎
  • apache版本查看命令
  • spyware.exe - spyware是什么进程
  • Win7系统打开D盘文件后怎么没有后退箭头
  • php创建注释的方法
  • cocos html
  • 注册表cmd
  • bat批处理删除文件
  • css选择器类选择器
  • perl pop push shift unshift实例介绍
  • 前端防止sql注入
  • 实用的批处理
  • css文件放在什么目录
  • vue-cli lib
  • javascriptcsdn
  • nodejs 代理请求
  • centos6升级到centos8
  • javascript简明教程
  • 国家税务局公告2021年第3号
  • 江苏灵活就业医保交多少年
  • 外贸企业出口退税会计分录怎么做
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设