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

回到顶部