位置: 编程技术 - 正文

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

  • 房产税和土地使用税每年都要交吗
  • 印花税的征税对象是条例列举的凭证未列举的不征税
  • 2021城建税
  • 普通发票专用发票每张最高限额
  • 装修预付款怎么做分录
  • 企业收到投资款怎么处理
  • 返聘人员工伤可以申请工伤鉴定吗
  • 公司买卖股票如何账务处理
  • 营改增后填用作废的发票可以用来报销吗?
  • 普票记账联可以报销吗
  • 资源税如何进行账务处理
  • 多付工资计入哪个科目
  • 以前年度少计提收入
  • 电商公司购买拍照违法吗
  • 住房公积金是福利费吗
  • 差额征税可以开发票吗
  • 个税缴纳期数填1是什么意思
  • 企业押金怎么管理
  • 材料验收入库会计分录怎么写计划成本法
  • 客户的佣金怎么处理
  • 高新企业研发费用占销售收入的比例
  • 安卓系统详解
  • 开了红字发票销售方怎么账务处理?
  • php部署在什么服务器
  • 获取url的参数有哪些方法
  • 招财树的养殖方法
  • DxDebugService.exe是什么进程 DxDebugService进程安全吗
  • 扫码分享到微信
  • 土增税税
  • 联想thinkpad l380yoga
  • 债券转换是什么意思
  • 已知税额和不含税额求税率
  • 前端vue3
  • vue-echarts
  • 中标费用由哪方出
  • 增值税进项发票不够抵扣怎么办
  • 普通增值发票作废税务局能查到吗
  • 怎么确定应付账款的完整性
  • 5万元买二手车能买什么价位的车
  • sql server 2008 2014
  • 用sql语句查找年龄大于20
  • 小规模纳税人免增值税的政策
  • 纳税调整调减有哪些
  • 未收到投资款可以确认实收资本吗
  • 将外购商品作为非货币
  • 银行存款支付投资者投入的款项54万
  • 印花税算错了地方怎么办
  • 增值税对企业
  • 收到发票就是付款了吗
  • 外经证核销反馈表写错了怎么办
  • 主营业务成本的贷方是什么
  • 会计凭证中转是什么
  • mysql 备份和恢复
  • 光标很粗怎么弄细
  • 受益无穷还是受用无穷
  • linux的ip查看
  • ubuntu20 配置静态ip
  • xp安装盘复制u盘
  • gws.exe是啥
  • linux tar -zxf
  • win8上不了网
  • vs2012怎么样
  • 跨域请求的三种方法
  • Ext4.2的Ext.grid.plugin.RowExpander无法触发事件解决办法
  • css的基础
  • 拖拽js实现
  • 监控服务器安装教程
  • Node.js中的http请求客户端示例(request client)
  • 怎么看物理内存
  • 使用BMFont+NGUI利用图片制作自定义字体
  • 猫的所有视频
  • unity5权威讲解
  • js怎么获取复选框选中的值
  • 中国一年的税收是多少万亿
  • 公司税务风险情况说明怎么写
  • 智云发票集中管理云平台官网
  • uk开票软件如何赋码
  • 旅游景区可免交土地使用税
  • 江苏宿迁个体户那个园区好
  • 耕地占用税减免税范围包括
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设