Python中super详解及应用场景举例

本文从基础知识出发,详细解释了Python中的super是什么,纠正了将super误解为仅用于调用父类方法的常见误区,并通过实例说明了super的正确使用方式。文章深入探讨了super的MRO原理,以及在处理多继承中同名方法冲突和方法增量修改等场景的应用。
摘要由CSDN通过智能技术生成

一、前言

最近有粉丝向我咨询super相关的问题,说网上搜索到的教程不够通俗易懂,看了之后还是不太理解。所以在这里基于我自己的理解来讲解一下super

二、什么是super

1.super也是一个类,是的。他不是一个方法也不是一个内置的关键字。

class A:
    pass

print(type(super(A)))

输出结果

<class 'super'>

直接通过查看super的源码也可以看出它是一个类
在这里插入图片描述

另外,网上很多文章讲解super就是用来调用父类方法的,这也是一个错误的观点!

假如我们有下面这样一个例子:

class A:
    def __init__(self):
        print("A")


class B(A):
    def __init__(self):
        print("B")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值