python object类

只愿长相守 提交于 2020-03-12 08:15:40
  • object是python的默认类,有很多的方法,python中默认的list,str,dict等等都是继承了object类的方法
  • 继承了object的类属于新式类 ,没有继承属于经典类
  • 在python3种默认都是新式类,也即是所有的自定义类,基类都会继承object类

在python3.x的所有类都是object的子类,所以对于一些内置的方法会写在object类中,如果子类不定义,在调用的时候最终会调用object类中的方法,就不会让程序出现不必要的错误了,__init__方法就是其中的一个例子;

所有继承了object类的类 ---- 新式类
在python2中 不继承object类的都是 经典类


class A(object):
    pass    # 新式类

class A:
    pass   # 经典类 :在多继承中遵循深度优先
           # 经典类中没有super和mro方法

所有的py3中 的类都继承object 是新式类,在继承中 遵循 广度优先的 C3算法,也可以使用mro来查看继承顺序,super这个方法 可以帮助我们查找到mro顺序中的下一个类

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!