欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

对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之间函数的调用关系详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。