美文网首页
python 2 中的新式类、经典类

python 2 中的新式类、经典类

作者: emm_simon | 来源:发表于2020-01-14 20:42 被阅读0次

在Python 3.x中取消了经典类,默认都是新式类;但是在Python2.x中,是有区分新式类和经典类的,python2中默认都是经典类。

在Python 3.x中取消了经典类,默认都是新式类,并且不必显式的继承object
class Person(object):pass
class Person():pass
class Person:pass
三种写法并无区别,都是新式类,推荐第一种

但是在Python2.x中,默认都是经典类,只有显式继承了object才是新式类,即:
class Person(object):pass新式类写法
class Person():pass经典类写法
class Person:pass经典类写法

python2中,新式类&经典类的主要区别在于继承搜索的顺序发生了改变

经典类多继承搜索顺序(深度优先);新式类多继承搜索顺序(广度优先)。

相关文章

网友评论

      本文标题:python 2 中的新式类、经典类

      本文链接:https://www.haomeiwen.com/subject/xbaaactx.html