Python3中的super()函数

super()函数的用处是调用当前类的父类函数。在要调用父类的函数之外,还需要加一点别的操作的时候,特别有用。

例:

class AA(object):
    def print_something(self):
        print('I am AA.')


class BB(AA):
    def print_something(self):
        super().print_something()
        print('I am BB.')


if __name__ == "__main__":
    b = BB()
    b.print_something()

结果是:

I am AA.
I am BB.

上面是单继承的例子,用super()而不是直接用父类的名字去调用父类函数的好处是不用管父类的名字。即使父类改名了,super()的调用依然有效。

多重继承的时候需要根据MRO来决定调用顺序。详见官方文档:

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。