热门搜索 :
考研考公
您的当前位置:首页正文

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

2024-08-04 来源:伴沃教育

有网友碰到这样的问题“Python中super()详解及应用场景举例”。小编为您整理了以下解决方案,希望对您有帮助:

解决方案1:

针对Python中super()的疑惑,本文将深入解析其本质和应用场景。首先,super并非一个方法或内置关键字,而是一个类,这是通过查看其源码可以证实的。

许多人误以为super仅用于调用父类方法,但这是一个误解。以一个例子来说明,如果按照这种观点,预期输出应为"D B A C A",但实际上并非如此。super的调用遵循Python的MRO(方法解析顺序),这是由C3算法决定的,具体细节可以参考相关链接kaiyuan.me/2016/04/27/C...

接下来,我们看super在实际应用中的场景。当需要在子类中扩展父类方法而不完全重写时,super就派上用场了。例如,考虑如何在list的append方法中添加中文支持,并在操作成功后返回一个值。原方法调用后返回None,通过super重写,我们可以实现这些功能。

在restfremework中,super也有广泛应用,比如重写Response信息,除了使用Django的中间件,还可以通过super的dispatch方法来实现。以上内容是关于super的简要介绍,更多详情请关注个人公众号【曲鸟讲测试开发】,那里有更多相关推荐文章,如"从不建议为了就业盲目学习Python"。

Top