py06_05-2:案例之买房子

class HouseItem:

    def __init__(self, name, area):
        self.name = name
        self.area = area

    def __str__(self):
        return "[%s] ---> 占地 %.2f 平方" % (self.name, self.area)


class House():

    def __init__(self,house_type, area):
        self.house_type = house_type
        self.area = area
        # 剩余面积
        self.free_area = area
        # 家具列表
        self.house_item = []

    def __str__(self):
        return ("户型:%s\n总面积:%.2f\n剩余:%.2f\n家具:%s" % (self.house_type,
                                                    self.area,
                                                    self.free_area,
                                                    self.house_item))

    def add_item(self,item):
        if item.area > self.free_area:
            print('空间不够,无法添加新家具')
            return
        print('添加%s' % item)
        self.house_item.append(item.name)
        self.free_area -= item.area

bed = HouseItem('习梦思',4)
chest = HouseItem('衣柜', 2)
table = HouseItem('餐桌', 1.5)

# print(bed)
# print(chest)
# print(table)

my_house = House('别墅', 500)  # 创建一个房子
my_house.add_item(bed)  # 利用类的方法添加bed,chest, table
my_house.add_item(chest)
my_house.add_item(table)

print(my_house)

猜你喜欢

转载自www.cnblogs.com/yeyu1314/p/12551011.html