在一个类里主动调用其他类成员

在一个类里调用其他类里的方法

方式一:

 1  class Base(object):
 2 
 3      def f1(self):
 4          print('5个功能')
 5 
 6  class Foo(object):
 7 
 8      def f1(self):
 9          print('3个功能')
10          Base.f1(self)     #调用Base类里的方法  需要手动传参obj
11 
12  obj = Foo()
13  obj.f1()


方式二:

 1 class Base(object):
 2     def f1(self):
 3         print('5个功能')
 4 
 5 class Foo(Base):
 6     def f1(self):
 7         super().f1() #根据继承顺序调用下一个父类的方法
 8         print('3个功能')
 9         
10 obj = Foo()
11 obj.f1()

方式三:

 1 class Foo(object):
 2     def f1(self):
 3         super().f1()  # 此时按照继承顺调用下一个父类的方法
 4         print('3个功能')
 5 
 6 class Bar(object):
 7     def f1(self):
 8         print('6个功能')
 9 
10 class Info(Foo,Bar):
11     pass
12 
13 # obj = Foo()
14 # obj.f1()
15 
16 obj = Info()
17 obj.f1()
18 # 6个功能
19 # 3个功能

 

posted @ 2018-08-29 16:08  神神气气  阅读(576)  评论(0编辑  收藏  举报