Python继承的原理分析
原理分析
1、子类会先于父类被检查。多个父类会根据它们在列表中的顺序被检查。
2、如果对下一个类存在两个合法的选择,选择第一个父类。
Python中子类可以同时继承多个父类,如果继承了多个父类,那么属性的查找方式有两种,分别是:深度优先和广度优先。
实例
# -*- coding: utf-8 -*-# @Time : 2019/12/24 09:30
# @Author : 我就是任性-Amo
# @FileName: 15.新式类与经典类.py
# @Software: PyCharm
# @Blog :https://blog.csdn.net/xw1680
class A(object):
def test(self):
print('from A')
class B(A):
def test(self):
print('from B')
class C(A):
def test(self):
print('from C')
class D(B):
def test(self):
print('from D')
class E(C):
def test(self):
print('from E')
class F(D, E):
# def test(self):
# print('from F')
pass
f1 = F()
f1.test()
print(F.__mro__) # 只有新式才有这个属性可以查看线性列表,经典类没有这个属性
# import inspect # 使用inspect模块中的getmro()方法可以查看python2.x的mro顺序
以上就是Python继承的原理分析,希望对大家有所帮助。更多Python学习指路:python基础教程
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
以上是 Python继承的原理分析 的全部内容, 来源链接: utcz.com/z/544891.html