博客
关于我
python中的super函数
阅读量:588 次
发布时间:2019-03-11

本文共 756 字,大约阅读时间需要 2 分钟。

Python中的super函数是一个强大的工具,用于在继承类时调用父类的方法或属性。虽然它在编程中并不常用,但理解它的使用方式对于任何一个Python开发者都是非常有必要的。

super()函数的主要作用是为了在子类中访问父类的特定方法或属性。当子类覆盖了父类某些方法时,super()可以帮助开发者明确地调用父类的原始方法,而不是通过子类的方法来实现。此外,super()还可以在类继承链的深度中调(ceive父类以外的多个ancestor类的方法。

在实际使用中,super()的正确使用尤为重要。例如,在Python中,当我们定义一个子类并重写了一个方法时,通常可以通过super().method()来调用父类的方法。这样可以确保代码的可维护性和可扩展性。

让我们通过一个简单的示例来理解super()的功能:

class A:    def add(self, x):        y = x + 1        print(y)

class B(A)继承了class A,并重写了add方法:

class B(A):    def add(self, x):        super().add(x)

当我们创建一个B对象并调用add方法时:

b = B()b.add(2)

结果会是:

3

在这个示例中,super().add(x)确实调用了父类A的add方法,从而正确地计算了x+1的值。

通过这个简单的例子我们可以看出,super()函数在类继承中起到了直接调用父类方法的作用。这对于复杂的继承关系和多层继承allisance hierarchy特别有用。

总的来说,super()函数是一个非常强大的工具,尽管它的使用场景相对较少,但掌握它对于写出高效且可靠的Python代码至关重要。

转载地址:http://kdctz.baihongyu.com/

你可能感兴趣的文章
Python APP自动化测试框架开发实战
查看>>
python argparse模块
查看>>
Python asyncio库的学习和使用
查看>>
Python AttributeError:“dict“对象没有属性“append“
查看>>
Python base64和hashlib模块
查看>>
python basic programs
查看>>
python bert_gen.py 报错Unable to load weights from pytorch checkpoint file for......
查看>>
python binascii.Error: Incorrect padding
查看>>
Python bool() 函数能否为无效参数引发异常?
查看>>
Python C 程序子进程在“for line in iter“处挂起
查看>>
Python Celery:自动化测试平台定时任务必备的三方库
查看>>
python check_output 失败,退出状态为 1,但 Popen 适用于相同的命令
查看>>
Python CONNECT 4 CHECK WIN函数
查看>>
python cos,Python cos(90)和cos(270)不是0
查看>>
python进阶(4):Python 脚本文件重启自身进程
查看>>
python ctypes库中动态链接库加载方式
查看>>
python cv2 图像( np array )转 HObject
查看>>
python进阶(3):文件操作
查看>>
python cv2截取不规则区域图片
查看>>
python CV2裁剪图片并保存
查看>>