-
练习
''' 1).房子类 有户型,总面积和家具名称列表[] 新房子没有任何的家具 def __init__(self,hx,area): self.hx=hx self.area= area self.lists=[] 添加家具 add_furniture(self,furniture): 展示方法:show(self) 户型 剩余 放了哪些家具 2) .家具类 有名字和占地面积属性, class Furniture: .... class Bed(Furniture): .... class Desk(Furniture): .... ... 创建家具对象: 床:占4平米 衣柜:占2平面 餐桌:占1.5平米 3).将以上三件家具添加到房子中 4).打印房子时,要求输出:户型,总面积,剩余面积,家具名称列表 '''
class House: def __init__(self, hx, area): self.hx = hx self.area = area self.lists = [] # 添加家具 def add_furniture(self, furniture): # furniture = table if isinstance(furniture, Furniture): # 添加到家具列表 self.lists.append(furniture) # 从总面积减去家具的面积 self.area -= furniture.area print('添新家具了') else: print('不能随便往家里搬哦!') # 展示 def show(self): print('户型:', self.hx) print('剩余面积:', self.area) print('家具如下:') for f in self.lists: print(f) class Furniture: def __init__(self, name, area): self.name = name self.area = area def __str__(self): return self.name + '占用面积:' + str(self.area) class Bed(Furniture): pass class Table(Furniture): pass class Robe(Furniture): pass bed = Bed('床', 4) table = Table('桌子', 1.5) robe = Robe('衣柜', 12) house = House('2室一厅', 88) house.add_furniture(bed) house.add_furniture(table) house.add_furniture(robe) house.show()
多态练习
最新推荐文章于 2022-07-06 23:03:20 发布