python多继承的使用

今天复习看到一个考试题,本来觉得很简单,上手一写一堆错,现在总结下问题所在

多继承的子类构造器如果要使用父类的构造器的话,尽量用分开的两个不同父类的名字直接调用,而不要让编译器自己去找,容易出错。

例如:

class TeacherCadre(Teacher, Cadre):
    def __init__(self, t='', m='', s='', p='', d='', n='', g='', age='', w=''):
        Teacher.__init__(self, t, m, s)
        Cadre.__init__(self, p, d)

       ''' super(TeacherCadre, self).__init__(t, m, s)
        super(TeacherCadre, self).__init__(p, d)'''


        self.name = n
        self.gender = g
        self.age = age
        self.__wages = w

 第一种就是修改后的方法,第二种是原始方法,第二种出错了,困扰好久,查了以后说是编译器会自动查找对应的构造函数,我这里这个不对,还没有更深地搞清楚怎么回事

差不多就这样了,第一篇笔记

以后多写

 

你可能感兴趣的:(python多继承的使用)