对Python Class之间函数的调用关系详解
程序员文章站
2022-06-20 23:52:04
假设有class a 和 class b两个类,class a中定义了a(),class b中定义了b().
现在我想在class b中调用 class a中的函数a()...
假设有class a 和 class b两个类,class a中定义了a(),class b中定义了b().
现在我想在class b中调用 class a中的函数a()。此处介绍三种调用方法:
方法一:
在class b中所定义的fuction()中声明class a的对象a,然后用对象a来调用class a的函数a().
最后在main中声明class b的对象b,让b调用该类中的fuction().
#!/usr/bin/env python # -*- coding: utf-8 -*- class a(): def __init__(self,parent): self.parent = parent def a(self): print 'class a' class b(): def fuction(self): a = a(none) a.a() if __name__ == '__main__': b = b() b.fuction()
方法二:
在class b的__init__()中将class a和class b产生关联,具体方法如下code。
首先在main中声明class a的对象a,然后将对象a传入到class b的__init__(self,object)中,这样self.object就指向class a。
就可以调用class a中的函数了。
#!/usr/bin/env python # -*- coding: utf-8 -*- class a(): def __init__(self,parent): self.parent = parent def a(self): print "class a" class b(object): def __init__(self,object): self.object = object self.object.a() def b(self): print "class b" if __name__ == '__main__': a = a(none) b = b(a) b.b()
方法三:
直接在class b中声明class a的对象,该对象是class b的self.a_object。
#!/usr/bin/env python # -*- coding: utf-8 -*- class a(): def a(self): print "class a" class b(object): def __init__(self): self.a_object = a() self.a_object.a() def b(self): print "class b" if __name__ == '__main__': b = b() b.b()
以上这篇对python class之间函数的调用关系详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。