Python开发基础-Day20继承实现原理、子类调用父类的方法、封装
继承实现原理 python中的类可以同时继承多个父类,继承的顺序有两种:深度优先和广度优先。 一般来讲,经典类在多继承的情况下会按照深度优先的方式查找,新式类会按照广度优先的方式查找 示例解析: 没有共同头部父类的类型 1 class E: 2 def test(self): 3 print('from E') 4 # pass 5 class F: 6 def test(self): 7 print('from F') 8 # pass 9 10 class C: 11 def test(self): 12 print('from C') 13 # pass 14 15 class B(C): 16 def test(self): 17 print('from B') 18 # pass 19 20 class D(E): 21 def test(self): 22 print('from D') 23 # pass 24 class A(B,D,F): 25 def test(self): 26 print('from A') 27 # pass 28 obj=A() 29 obj.test() 在这种模型下,新式类和经典类的继承顺序都一样。 调用obj.test(),首先找boj对象的__dict__字典,然后找生成类A的__dict__字典,如果这两个都没有