Python第十九天搬家具

92 阅读3分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

般家具

需求:将小于房子剩余面积的家具摆放到房子里

步骤

定义两个类,一个是房子类,一个是家具类

定义类

房子类

  1. 实例属性

房子地理位置

房子占地面积

房子剩余面积

房子内家具列表

  1. 实例方法

容纳家具

  1. 显示房屋信息

家具类

家具名称

家具占地面积

代码实现

定义类

家具类

class jiaju():
    #设置一个初始化
    #name是名称,area是占地面积,由于家具的多样化和占地面积不一样,所以我们不能固定家具名称和家具的占地面积,由用户传输进来,所以定义两个形参
    def __init__(self,name,area):
        #家具名称
        self.name = name
        #家具占地面积
        self.area = area
        
        

定义对象

就是设置好家具的名称和占地面积

class jiaju():
    #设置一个初始化
    #name是名称,area是占地面积,由于家具的多样化和占地面积不一样,所以我们不能固定家具名称和家具的占地面积,由用户传输进来,所以定义两个形参
    def __init__(self,name,area):
        #家具名称
        self.name = name
        #家具占地面积
        self.area = area
        
#家具
shuangrenchuang = jiaju('双人床',6)
safa = jiaju('沙发',4)
kongtiao = jiaju('空调',1)
bingxiang = jiaju('冰箱',2)

房子类

class jiaju():
    #设置一个初始化
    #name是名称,area是占地面积,由于家具的多样化和占地面积不一样,所以我们不能固定家具名称和家具的占地面积,由用户传输进来,所以定义两个形参
    def __init__(self,name,area):
        #家具名称
        self.name = name
        #家具占地面积
        self.area = area
        
​
​
​
​
#房子类
class fangzhi():
    def __init__(self,address,area):
        #地理位置
        self.address = address
        #房子面积
        self.area= area
        #剩余面积
        self.free_area = area
        #家具列表
        self.furniture = []
        
    def __str__(self):
        return f'房子坐落于{self.address},占地面积{self.area},剩余面积{self.free_area},家具有{self.furniture}'
    
    
    
    
    
#家具
shuangrenchuang = jiaju('双人床',6)
safa = jiaju('沙发',4)
kongtiao = jiaju('空调',1)
bingxiang = jiaju('冰箱',2)
​
​
#房子jia1 = fangzhi('北京',1000)
print(jia1)

容纳家具

class jiaju():
    #设置一个初始化
    #name是名称,area是占地面积,由于家具的多样化和占地面积不一样,所以我们不能固定家具名称和家具的占地面积,由用户传输进来,所以定义两个形参
    def __init__(self,name,area):
        #家具名称
        self.name = name
        #家具占地面积
        self.area = area
        
​
​
​
​
#房子类
class fangzhi():
    def __init__(self,address,area):
        #地理位置
        self.address = address
        #房子面积
        self.area= area
        #剩余面积
        self.free_area = area
        #家具列表
        self.furniture = []
        
    def __str__(self):
        return f'房子坐落于{self.address},占地面积{self.area},剩余面积{self.free_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('家具太大,剩余面积不足,无法容纳')
    
    
#家具
shuangrenchuang = jiaju('双人床',6)
safa = jiaju('沙发',4)
kongtiao = jiaju('空调',1)
bingxiang = jiaju('冰箱',2)
lanqiuchang = jiaju('篮球场',20000)
​
#房子
​
jia1 = fangzhi('北京',1000)
print(jia1)
​
​
jia1.add_furniture(shuangrenchuang)
jia1.add_furniture(safa)
jia1.add_furniture(kongtiao)
jia1.add_furniture(bingxiang)
jia1.add_furniture(lanqiuchang)
​
​
print(jia1)

\