Day4----类训练(搬家具、烤地瓜)

1、搬家具

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

    def __str__(self):

        return  f'家具的类型为:{self.name} ,家具的占地面积为:{self.area}平'

class House:
    def __init__(self,adress,area):
        self.adress=adress
        self.h_area=area
        self.furniture_list=[]

        self.free_area=area
    def __str__(self):
        # 自定义家具类,将该类对象添加到列表中,直接打印,显示的是对象地址
        buf_list=[obj.name for obj in self.furniture_list]
        if buf_list:
            return f"房子的地址为:{self.adress}\n房子的占地面积为{self.h_area}平\n" \
                   f"剩余面积为{self.free_area}"\
                   f"\n家具有{','.join(buf_list)}"
        else:
            return f"房子的地址为:{self.adress}\n房子的占地面积为{self.h_area}平\n" \
                   f"剩余面积为{self.free_area}" \
                   f"\n家具还未添加"
    def add_furniture(self,obj_furniture):
        '''
        obj_furniture: 家具类的对象
        '''
        if self.free_area>obj_furniture.area:
            self.furniture_list.append(obj_furniture)
            self.free_area-=obj_furniture.area
            print(f'增添家具:{obj_furniture.name}')
        else:
            print('添加失败,换个房子')
        pass

furniture=Furniture('豪华双人床',21)
print(furniture)
horse=House('西安石油大学',100)
print(horse)
horse.add_furniture(furniture)
print(horse)

2、烤地瓜

class Potato:
    def __init__(self,):
        self.status='生的'
        self.total_time=0
        self.name_list=[]
    def __str__(self):
        buf=','.join(self.name_list)
        if self.name_list:
            return f'地瓜的状态<<{self.status}>>,烧烤总时间<<{self.total_time}>>,烧烤的调料有<<{buf}>>'
        else:
            return f'地瓜的状态<<{self.status}>>,烧烤总时间<<{buf}>>,烧烤的调料未添加>>'
    def cook(self,cook_time):
        '''
        [0,3) 生的
        [3,6) 半生不熟
        [6,8] 熟了
        [8,oo) 烤糊了
        '''
        self.total_time+=cook_time
        if self.total_time<3:
            self.status='生的'
        elif self.total_time<6:
            self.status = '半生不熟'
        elif self.total_time<8:
            self.status='熟了'
        else:
            self.status = '烤糊了'

    def add(self,name):
        self.name_list.append(name)



potato=Potato()
print(potato)
potato.add('油')
potato.cook(3)
potato.add('辣椒面')
print(potato)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小步调LLY

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值