如何使用python中的子类方法调用第二个父类的方法?

2024-06-26 13:25:12 发布

您现在位置:Python中文网/ 问答频道 /正文

以下是我的代码:

class Parent1(object):
    def __init__(self):
        print "!!! ___initialization Parent1___ !!!"

    def method(self):
        print "*** method of Parent1 is called ***"


class Parent2(object):
    def __init__(self):
        print "!!! ___initialization Parent2___ !!!"

    def method(self):
        print "*** method of Parent2 is called ***"

class Child(Parent1,Parent2):
    def __init__(self):
        print "!!! ___initialization Child___ !!!"

    def method(self):
        super(Child,self).method()
        print "*** method of Child is called ***"


Ch = Child()
Ch.method()

我想使用子类的对象调用Parent2类的method()。条件是只应创建子类对象,并且子类声明中不应更改(class Child(Parent1,Parent2):不应更改)


Tags: ofselfchildobjectinitisdef子类
1条回答
网友
1楼 · 发布于 2024-06-26 13:25:12
Parent2.method(self)

这就是您所需要的全部-instance.method()只是ClassName.method(instance)的语法糖,所以您只需要在没有语法糖的情况下调用它就可以了。在

我将Child类改为:

^{pr2}$

以及:

# Out:
$ python c.py
!!! ___initialization Child___ !!!
*** method of Parent1 is called ***
*** method of Child is called ***
*** method of Parent2 is called ***

你完全可以得到预期的输出。在

相关问题 更多 >