A到D的过程没有给出arg参数
1
E(520)
传入super
顺序是BDACE
后面不知道为什么会报错了
现在知道了,ECADB,CA过程中已经把arg舍弃掉了,然后D又要arg,所以才会报错
按照mro顺序: E -> C -> A -> D -> B -> object, 在代码进行到 C 的构造函数时, super()指向的是 A , 因为 A 的构造函数不带参数, 参数arg没有被带到 A 中, 继续按照mro顺序, super()指向的是 D , 但是因为 D 的构造函数带参数arg, 此时 A 没有携带 arg, 所以产生了报错.
A和B里面不需要写super()
好
A没有参数给D
{:10_249:}
1
不知道
继承顺序为BDACE,C需要传参,但A没有
1
1
gfh
问题在于按照mro顺序,B后面没有任何类,所以报错了
学习了
D缺少输入参数arg
类c和类D没有定义self.arg = arg
学习