Python中多个类的使用实例

class FurnitureFeature(object):
    def __init__(self, furniture_name, furniture_area):
        self.furniture_name = furniture_name
        self.furniture_area = furniture_area
        print('家具名:%s\n占地面积:%.1f平方米' % (self.furniture_name, self.furniture_area))


class House(object):
    def __init__(self, house_type, house_area):
        self.house_type = house_type
        self.house_area = house_area
        self.house_furniture = []
        self.house_area_left  = house_area

    def __str__(self):
        return '户型:%s,总面积:%s平方米\n家具列表:%s\n剩余面积:%.1f平方米' % (
            self.house_type, self.house_area, str(self.house_furniture).replace('[', '').replace(']', ''), self.house_area_left)

    def add_furniture(self, FurnitureFeature):
        if self.house_area_left > FurnitureFeature.furniture_area:
            self.house_furniture.append(FurnitureFeature.furniture_name)
            self.house_area_left = self.house_area_left - FurnitureFeature.furniture_area
            return True
        else:
            return False


ALL = House('新房', 3)
bed = FurnitureFeature('床', 1.5)
table = FurnitureFeature('课桌', 1)
chest = FurnitureFeature('餐桌', 2)
for n in bed, table, chest:
    if ALL.add_furniture(n):
        print('%s添加成功!' % n.furniture_name)
    else:
        print('%s添加失败!空间不足!' % n.furniture_name)
print(ALL)
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值