python的多继承如何调用父类同名的方法!

默认情况下,python多继承super()方法只会调用第一个父类的方法(后面多继承需要类名.方法名(self))


class Test001:

    def __init__(self):
        print("test001")

    def test(self):
        print("method test001")


class Test002:

    def __init__(self):
        print("test002")

    def test(self):
        print("method test002")



# 默认情况下,python多继承super()方法只会调用第一个父类的方法(后面多继承需要类名.方法实现)
class Test(Test001,Test002):

    def __init__(self):
        # super仅会调用第一个父类Test001的方法
        super().__init__()
        # 第二个父类开始,类名.方法名(self)的方式来调用!
        Test002.__init__(self)
        print("Test")

        super().test()
        Test002.test(self)

Test()

猜你喜欢

转载自blog.csdn.net/weixin_43343144/article/details/87856300