python的经典类与新式类

新式类:class Myclass(object):

                pass

经典类:class Myclass:

                pass

新式类里面加了一些新方法,例如重写父类:

class A(object):

        def __init__(self,name,age,sex):

                self.name = name

                self.age = age

                self.sex = sex

class B(A):

        def __init__(self,name,age,sex,job):

                super(B,self).__init__(name,age,sex)

                self.job = job

新式类写法:super(B,self).__init__(name,age,sex)

经典类写法:A.__init__(self,name,age,sex)

新式类以上两种写法都能用,经典类不能用新式类的写法;

经典类还有一些继承顺序的bug;

总而言之新式类就相当于经典类的升级版,建议以后写代码都用新式类;

原文地址:https://www.cnblogs.com/JahanGu/p/7483747.html