Python中多重继承的方法解析

2024-10-01 02:20:13 发布

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

我试图理解方法解析顺序的多重内在性。 这是我的密码使用。什么时候我试图创建类'ClassC'的对象,只有类a的构造函数得到打过电话。怎么打在这种情况下解决方法了吗?在

class ClassA:
    def __init__(self):
        print "inside a's init"

class ClassB:
    def __init__(self):
        print "inside b's init"

class ClassC(ClassA,ClassB):
    pass

c = ClassC()

输出:

^{pr2}$

Tags: 对象方法self密码顺序initdefclass
1条回答
网友
1楼 · 发布于 2024-10-01 02:20:13

我相信有一个python PEP详细介绍了MRO算法,但它相当复杂。另外,在Fluent Python一书中也有介绍。我相信短篇故事是从左到右

如果你换成

class ClassC(ClassB,ClassA):
    pass

我打赌你会看到变化的。(更新,您肯定会看到更改)

如果你打电话

^{pr2}$

你应该看看mro打印出来了。在

相关问题 更多 >