python 实例二:搬家具

day10②

python自学,笔记分享

面向对象编程——实例二:搬家具

'''搬家具:小于房子剩余面积的家具摆放到房子中'''
# 定义房子类(占地面积、剩余面积、地理位置、房子内家具列表),家具类(名字,占地面积)
# 实例方法:容纳家具
class Furniture():
    def __init__(self, name, area):
        self.name = name  # 分别取形参,方便传入数据
        self.area = area  # 家具占地面积

class Home():
    def __init__(self, address, area):
        self.address = address
        self.area = area
        # 初始没有家具,所以只需定义上面两个
        self.free_area = area  # 初始值没有家具所以等于area
        self.furniture = []
    def add_furniture(self, item):
        if self.free_area >= item.area:  # 调用到大小
            self.furniture.append(item.name)  # 调用到名字
            self.free_area -= item.area
        else:
            print('家具太大,剩余面积不足')
    def __str__(self):
        return f'房子在{self.address}占地{self.area}剩余面积{self.free_area},家具有{self.furniture}'

# 显示房屋信息
bed = Furniture('双人床', 6)
sofa = Furniture('沙发', 3)
jia1 = Home('玉田', 200)
print(jia1)
jia1.add_furniture(bed)
jia1.add_furniture(sofa)
print(jia1)

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值