`
simba.wjxy
  • 浏览: 6853 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

python super()

阅读更多

[size=medium;]python内置函数super()[/size]



super作为关键字在python2.2版本中出现的,目的是要解决子类绑定父类的问题,使用super可以降低代码的维护难度,在子类中可以方便的调用父类中的方


法。super关键字使用在new-style class中使用,形式如下:
[code="python"]super(type [, object - or - type ])

如果省略第二个参数,super 产生的object为非绑定。如果第二个参数为object,

[code="python"]instance(obj, type)
为True,如果第二个参数为type, issubclass(type2, type)为True。


典型的使用方法为:

[code="python"]class C(B):
        def methon(self, arg):
                super(C, self).method(arg)

使用super()的两种典型情况:


情况一:在单一继承的类结构中,使用super引用父类,提高代码的维护效率。

情况二:he second use case is to support cooperative multiple inheritance in a
dynamic execution environment.  This use case is unique to Python and is
not found in statically compiled languages or languages that only
support
single inheritance.  This makes it possible to implement “diamond
diagrams”
where multiple base classes implement the same method.  Good design
dictates
that this method have the same calling signature in every case (because
the
order of calls is determined at runtime, because that order adapts
to changes in the class hierarchy, and because that order can include
sibling classes that are unknown prior to runtime).(不是很懂,所以把英文写上,大意为在动态运行环境中,支持多重继承,可以调用多个父类的相同方法,如果不对请指正啊。)

 

0
1
分享到:
评论

相关推荐

    python super用法及原理详解

    这篇文章主要介绍了python super用法及原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 概念 super作为python的内建函数。主要作用如下: 允许我们...

    python super()函数的理解(csdn)————程序.pdf

    Python中的`super()`函数是一个非常重要的特性,尤其在面向对象编程中用于处理继承关系。`super()`函数的主要作用是调用父类(超类)的方法,使得子类可以在不直接引用父类的情况下扩展或覆盖父类的功能。在Python中...

    python opencv超分辨率重建 4种模型调用

    使用方法: python super_res.py --model models/EDSR_x4.pb --image examples/zebra.png python opencv超分辨率重建 4种模型调用: EDSR_x4.pb ESPCN_x4.pb FSRCNN_x3.pb LapSRN_x8.pb

    python super函数使用方法详解

    Python 的 `super` 函数是面向对象编程中的一个重要概念,特别是在多继承的场景下,它被用来调用父类(超类)的方法。这个函数帮助我们解决了子类和父类之间的交互问题,使得代码更加简洁且易于维护。下面将详细解释...

    python super()函数的基本使用

    Python的`super()`函数是面向对象编程中一个非常重要的特性,它主要用于在子类中调用父类的方法。`super()`函数的主要目的是简化代码,避免直接引用父类名称,这样可以使代码更加灵活,减少硬编码,并有助于实现多...

    Python super()方法原理详解

    在Python编程语言中,`super()`方法是一个非常重要的特性,特别是在处理类的继承关系时。本文将详细解析`super()`方法的工作原理,并通过实例来解释其用途。 首先,`__init__()`函数是Python中的构造方法,用于初始...

    Python super()函数使用及多重继承

    ### Python `super()` 函数与多重继承详解 #### 一、`super()` 函数简介 在面向对象编程中,继承是一种常见的设计模式,它允许一个类(子类)继承另一个类(父类)的属性和方法。在 Python 中,`super()` 函数是一...

    linux-深入理解python

    在深入理解Python的过程中,我们需要了解多个方面的知识,包括但不限于Python的环境搭建、基础语法、数据类型、函数、模块、面向对象编程、文件操作、网络编程、以及Web开发等。以下是根据文档内容总结的详细知识点...

    C语言中文网Python教程

    “8.21Python super()使用注意事项.html”讨论了super()函数的使用,它用于调用父类的方法,尤其是在多继承场景下,能确保正确的调用顺序。 “9.14Python生成器(send,close,throw)方法详解.html”涉及Python的...

    解决python super()调用多重继承函数的问题

    ### 解决Python `super()` 调用多重继承函数的问题 在Python中,`super()` 函数被广泛用于实现多重继承。它可以帮助我们避免代码重复,并使得类的继承结构更加清晰。然而,在处理复杂的多重继承关系时,如何正确地...

    Python-SuperPoint兴趣点检测与描述自监督训练框架

    **Python-SuperPoint兴趣点检测与描述自监督训练框架** SuperPoint是一款先进的计算机视觉算法,主要应用于图像处理和特征匹配领域。它通过自监督学习的方式训练出能够进行精确兴趣点检测和描述的神经网络模型。在...

    python super的使用方法及实例详解

    Python的`super()`函数是一个非常重要的工具,尤其在处理类的继承关系时。它主要用于调用父类(超类)的方法,确保代码的简洁性和可维护性。在Python 3中,所有类都是新式类,因此我们可以充分利用`super()`的优势。...

    Python中的super用法详解

    Python中的`super`关键字是用来解决继承关系中调用父类方法的一个重要工具,尤其是在处理多继承的情况下。在Python 2.2之前,调用父类方法通常需要直接使用父类的名称并传入`self`参数,这在类结构发生变化时容易...

    10.super pix图像清晰化(超级分辨率)python代码实现

    本主题主要关注使用Python实现的Super-Resolution方法,特别是"Super Pix"这种特定的技术。下面我们将深入探讨相关的知识。 1. **图像清晰化**:图像清晰化是图像处理中的一个重要环节,其目标是提高图像的可读性和...

    深入理解Python中的super()方法

    Python中的`super()`方法是用来处理多重继承问题的关键工具,它使得子类能够便捷地调用父类的方法,尤其是在复杂的继承结构中。理解`super()`的工作原理对于编写清晰、高效的多继承代码至关重要。 首先,让我们澄清...

Global site tag (gtag.js) - Google Analytics