zoukankan      html  css  js  c++  java
  • 8、买房子-放家具

      房子已经成为了中国人不可回避的话题,朋友见面,你房子买了吗?TMD又涨价了。去相亲,你家买房了吗?在哪个位置,房子多大?等等种种问题,不胜枚举。房子都会买,无非是位置在哪里,房子有多大而已(当然不买也是可以的,只要你媳妇同意)。那么问题来了,买了房子,就放往房子里放家具。这里介绍一个程序,记录已买房子信息,存放家具的情况。

      大框架

    class Home(object):
        """定义一个房子类"""
        def
        #房子面积
        #房子户型
        #房子地址
        #房子里的家具
        
        #添加一个方法把家具添加到房子里
        def add():
            pass
            
    class Bed(object):
        """定义一个家具床"""
        def
        #床的名字
        #床的大小
        
    fangzi = Home()
    bed = Bed()
    print(fangzi)

      根据大框架,填入细节

    class Home:
        """定义一个房子的类"""
        def __init__(self,new_area,new_info,new_addr):
    #属性
            self.area = new_area #房子的面积
            self.info = new_info #房子的户型
            self.addr = new_addr #房子的地址
            self.left_area = new_area #剩余面积初始面积
            self.contain_items = []    #房子里的家具
    
        def __str__(self):
            msg =  "房子的总面积为%d,剩余面积为:%d,户型是:%s,地址是:%s"%(self.area,self.left_area,self.info,self.addr)
            msg += "房子里的家具有%s"%(str(self.contain_items),)#内容太多分开写
            return msg
    
    #方法
    
        #调用类Bed
        def add_item(self,item):
            #第一种调用方法
            #self.left_area -= item.area  #item就是被调用的Bed类的对象,加入一个剩余面积减少
            #self.contain_items.append(item.name)#添加一个家具存储到属性中
    
            #第二种调用方法
            self.left_area -= item.get_area()  #item就是被调用的Bed类的对象,加入一个剩余面积减少
            self.contain_items.append(item.get_name())#添加一个家具存储到属性中
            
    
    class Bed:
        def __init__(self,new_name,new_area):
            self.name = new_name #床的名字
            self.area = new_area #床的面积
        
        def __str__(self):
            return "%s床的面积是:%d"%(self.name,self.area)
    
        #第二种方法中添加获取的方法
        def get_area(self):
            return self.area
    
        def get_name(self):
            return self.name
    
    
    #创建一个房子的对象
    fangzi = Home(130,"三室一厅","武汉市 武昌区 中北路52号")
    print(fangzi)
    
    #创建一个床的对象
    bed1 = Bed("席梦思",4)
    print(bed1)
    
    #再添加一张床
    bed2 = Bed("三人床",5)
    print(bed2)
    
    #把床放进房子里
    fangzi.add_item(bed1)
    fangzi.add_item(bed2)
    print(fangzi)

      执行结果:

    所有内容,仅作参考,可能有不足或错误之处,欢迎留言批评指正
  • 相关阅读:
    CRC16冗余循环检测计算器好用。modbus RTU
    WINCC 应用与提高(78讲15.98G)视频教程网盘下载
    MFC win32 API串口同步模式代码示范
    arduino连接12864LCD方法ST7920
    arduino连接LCD1602LCD方法
    WIN10下如何解决PL2303驱动不可用的问题或者com口显示黄色感叹号usbtoserial
    SQL Server类型与C#类型对应关系
    SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问 .
    sql中如何调用另一台服务器的数据库查询数据呢?
    SQL Server 触发器
  • 原文地址:https://www.cnblogs.com/DreamRJF/p/8887746.html
Copyright © 2011-2022 走看看