Python Class之间函数的调用关系

假设有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()



“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论

打赏作者

SUMMER__SUN

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值