面向对象的应用——存放家具

本文通过创建Home和Bed类,演示了面向对象编程中如何实例化对象并存储。一个Home对象(fangzi)包含了Bed对象(bed1)和Box对象,展示了对象间的调用关系。程序运行成功,鼓励学习者深入理解面向对象编程概念。
摘要由CSDN通过智能技术生成

面向对象的应用——存放家具

此段程序主要内容如下:
先创建一个Home类和一个Bed类,然后用Home类创建fangzi对象,用Bed类创建家具bed1对象和box对象,在fangzi对象中存放bed1和box对象,其应用的重点在于一个对象对另一个对象的调用

原代码如下:

class Home:
	def __init__(self,new_mianji,new_huxing,new_dizhi):
		self.mianji = new_mianji
		self.huxing = new_huxing
		self.dizhi = new_dizhi
		self.shengyu_mianji = new_mianji
		self.jiaju = []
		
	def __str__(self):
		wupin = "房子面积:%d平米, 剩余面积:%d平米, 户型:%s, 地址:%s, "%(self.mianji,self.shengyu_mianji,self.huxing,self.dizhi)
		wupin += "房子所放的家具:%s"%(str(self.jiaju))
		return wupin

	def add_jiaju(self,jiaju):
		#self.shengyu_mianji -= jiaju.mianji
		#self.jiaju.append(jiaju.name)
		self.shengyu_mianji -= jiaju.gat_mianji()
		self.jiaju.append(jiaju.gat_name())

class Bed:
	def __init__(self,new_name,new_mianji):
		self.name = new_name
		self.mianji = new_mianji

	def __str__(self):
		return "%s占用的面积是:%d平米,"%(self.name,self.mianji)

	#对应17行
	def gat_name(self):     
		return self.name

	#对应18行
	def gat_mianji(self):
		return self.mianji
		
fangzi = Home(100,"三室两厅","北京市长安街")
print(fangzi)

bed1 = Bed("双人床",4)
print(bed1)

fangzi.add_jiaju(bed1)
print(fangzi)

box = Bed("衣柜",3)
print(box)

fangzi.add_jiaju(box)
print(fangzi)

运行结果如下

房子面积:100平米, 剩余面积:100平米, 户型:三室两厅, 地址:北京市长安街, 房子所放的家具:[]
双人床占用的面积是:4平米,
房子面积:100平米, 剩余面积:96平米, 户型:三室两厅, 地址:北京市长安街, 房子所放的家具:['双人床']
衣柜占用的面积是:3平米,
房子面积:100平米, 剩余面积:93平米, 户型:三室两厅, 地址:北京市长安街, 房子所放的家具:['双人床', '衣柜']

好好学习,天天向上!

Created with Raphaël 2.2.0 开始 学习使我快乐 学到新知识了吗? 吃饭去 yes no
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值