位置: 编程技术 - 正文

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

  • 已注册登记的机动车有什么情形的
  • 税收成本包括哪些
  • 预收款增值税纳税义务发生时间与确认收入时间
  • 电子发票和纸质发票只能二选一吗
  • 企业所得税营业收入是含税还是不含税
  • 公司帮其他单位开发票违法吗
  • 公司对公账户限额吗
  • 注册公司认缴资本不缴可以吗
  • 个人购买房产是指什么
  • 企业销售赠券的增值税如何处理
  • 为了贷款支付的土地评估费用怎么会计处理?
  • 开办费如何做纳税调增
  • 纳税义务未发生是什么意思
  • 长期借款利息计入在建工程
  • 成本暂估跨年度要怎么处理?
  • 补缴以前年度税费
  • 建筑业开票金额与审定金额之间的关系
  • 10个点的发票税点开6个点专票
  • 税控系统服务质量调查报告
  • 单边征收
  • 地下建筑如何防潮
  • 员工与单位解除劳动合同书范本
  • 收到多开的发票会计上怎么入成本?
  • 民间非营利组织会计制度及操作实务
  • 哪些票据可以冲抵增值税
  • 小规模纳税人不开票收入填在哪里
  • 员工饭卡充值是哪个部门做
  • 先预支后报销如何填写报销单需要老板签字吗
  • 年度利润总额是会计利润吗
  • 企业并购效益
  • 车间购买办公用品
  • 公积金贷款额度查询计算器
  • vue项目中使用opencv
  • 固定资产投资账务处理
  • 下岗职工生活费最多发多少个月
  • 一次性收入怎么交税
  • 坏账损失税务处理
  • php操作步骤
  • vue3 ts知乎专栏
  • 资产减值会计处理论文
  • 报销加油票怎么开票
  • 一个楼盘可以开盘几次
  • 已抵扣认证的发票开红字发票需要将原票退回吗
  • 全站怎么使用
  • java arraytolist
  • 物流企业会计核算的具体内容包括
  • 企业所得税申报更正怎么操作
  • 利润表的格式分为哪几种
  • 收到电子银行承兑汇票计入什么科目
  • 停车费不动产租赁税率
  • 土地利息可以作为土增扣除吗
  • 预收货款开票怎么做账
  • 事业单位以资产为准吗
  • 汇算清缴期间发放的工资
  • 购买软件使用费计入什么科目
  • 公司为员工购买小汽车属于什么所得
  • 经营租赁的房屋计提折旧吗
  • 电子发票不小心删掉了怎么办
  • 外贸企业进项税转出怎么申报
  • 财务费用中的利息费用指什么
  • sqlserver界面
  • 无法启动diagnostic policy service服务
  • win8停止服务
  • windows个性化设置在哪里
  • vrvedp_m.exe是什么
  • 重装win7系统后桌面没东西
  • linux vps 教程
  • windows xp 开机
  • 文件夹底部显示
  • [置顶]津鱼.我爱你
  • javascript总结
  • linux内核讲解
  • 物理引擎百科
  • jquery自定义表单
  • unity控制三维模型
  • Javascript在网页设计中的作用有哪些
  • 社保申报后多久缴费
  • 应付和未付的区别
  • 贤彬考研,刘磊?
  • 买下中国需要多少钱?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设