Python教程

python继承小记

本文主要是介绍python继承小记,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

新式类和旧式类

旧式类

python 2.x版本中,如果一个类没有从object继承,那它属于旧式类。

python2.1只有旧式类。python2.2开始引入新式类。

新式类

python2.x中必须显式继承object。

Python3.x中默认都是新式类,不必显式继承object。

旧式类和新式类的区别

  • 旧式类的实例a.__class__与type(a)的结果不一致,新式类的实例a.__class__和type(a)的结果一致。

  • 旧式类在方法查找时候遵循深度优先原则;新式类在方法查找时候使用C3算法,类似广度优先原则。

  • 旧式类不支持super(FatheClass, self).xxx的写法,否则会报错

    "

    TypeError: super() argument 1 must be type, not classobj

    "

这篇关于python继承小记的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!