首页 > 编程语言 >Python之搬家具

Python之搬家具

时间:2022-12-16 19:00:24浏览次数:55  
标签:__ area Python self 家具 jia1 furniture

一、需求

将⼩于房⼦剩余⾯积的家具摆放到房⼦中

二、步骤分析

需求涉及两个事物:房⼦ 和 家具,故被案例涉及两个类:房⼦类 和 家具类。

定义类:
房⼦类
实例属性
房⼦地理位置
房⼦占地⾯积
房⼦剩余⾯积
房⼦内家具列表
实例⽅法
容纳家具
显示房屋信息
家具类
家具名称
家具占地⾯积

三、代码实现

1、家具类
class Furniture():
def __init__(self, name, area):
# 家具名字
self.name = name
# 家具占地⾯积
self.area = area

2、房⼦类
class Home():
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('家具太⼤,剩余⾯积不⾜,⽆法容纳')

3、创建对象并调⽤实例属性和⽅法
bed = Furniture('双⼈床', 6)
jia1 = Home('北京', 1200)
print(jia1)
jia1.add_furniture(bed)
print(jia1)
sofa = Furniture('沙发', 10)
jia1.add_furniture(sofa)
print(jia1)
ball = Furniture('篮球场', 1500)
jia1.add_furniture(ball)
print(jia1)

标签:__,area,Python,self,家具,jia1,furniture
From: https://blog.51cto.com/u_13236892/5948177

相关文章

  • PYTHON 模块
    1.1模块模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。1.2导入模块import模块1,模块2,...定......
  • python模拟股票的数据分析
    股票分析需求:股票分析使用tushare包获取某股票的历史行情数据。输出该股票所有收盘比开盘上涨3%以上的日期。输出该股票所有开盘比前日收盘跌幅超过2%的日期。假如我......
  • 利用python实现typora自动上传图片
    利用python实现Typora内图像的上传缘由及目的在之前的markdown文件书写中,采用Notion软件。但是后来发现Notion的导出存在很多问题,尤其是在上传到博客园时,对于图片的处理......
  • 【脚本项目源码】Python制作艺术签名生成器,打造专属你的个人艺术签名
    前言明天就是拥抱情人节,情侣们会在公开的场合拥抱,向世人宣告你俩的爱意,也让这个寒冷的冬天变得格外温馨。到了年底依然能热情拥抱,也见证了两人情意如昔。今天子川就给大......
  • python利用列表知识,编写购物车小程序
    #readme#该程序的主要是用来模拟购买商品的store=[("iphone",5800),("pad",2000),("dress",500),("shoe",400)]#定义一个商品列表salary=input("输入你的工资")#输入工......
  • python-文件操作
    python-文件操作操作流程'''文件操作 打开文件:open 读写文件   读:把文件的内容读到变量-read里面   写:把变量值写入到文件里面 关闭文件'''......
  • 【python】subprocess 使用
    subprocess使用importsubprocessp=subprocess.Popen('ls-l',shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE,bufsize=1)bufsize:缓冲区大小.当......
  • Python SQL 驱动程序 - pymssql
    PythonSQL驱动程序-pymssql前言pymssql官方地址:https://pypi.org/project/pymssql/一、下载pymssql不通的操作系统,不同的Python版本下载对应的pymssql注意:博主运......
  • python-面向对象三大特性
    python-面向对象三大特性封装继承多态封装'''封装 封装就是把类的属性和方法封装到类的内部,只能在内部使用,不能在类外部使用 把属性和方法前面加两个下划线,这......
  • 家具家居MES系统对企业有哪些帮助
    随着作为耐用品的家具家居,需求越来越个性化、时尚化。通过集中化定制,最短时间最快的满足同类客户需求,兼顾定制生产和大规模生产就成为了所有家居家具企业解决的问题。家具家......