zoukankan      html  css  js  c++  java
  • 类实例:搬家具

    # 有房子家具,把家具放到房子里面去
    # 类:房子 初始化:家里地理位置,使用面积,房间剩余面积,家具列表[家具1,家具2]
    # 类:家具初始化:名字,占地面积
    
    class Home(object):
        def __init__(self, address, area):
            self.address = address
            self.area = area
            self.free_area = area# 没有放家具,剩余面积=使用面积
            self.furnitures = []
    
        def add_furniture(self,fur):  # fur是形参 -- 存一个家具
            # 最终面积 = 剩余面积 - 这次的家具面积
            # 看最终面积 >= 家具的area
            self.result_area = self.free_area - fur.area
            if self.result_area >= 0:
                # 可以搬 -- 把家具的名字append到列表 jiaju.name
                self.furnitures.append(fur.name)
                # 计算现在剩下的面积:放上了这个家具之后的面积
                self.free_area -= fur.area
            else:
                print('面积不足~~')
    
    
        def __str__(self):
            return '家的地址是%s,使用面积是%s,剩余面积是%s,家具有%s' % (self.address, self.area, self.free_area, self.furnitures)
    
    class Furniture(object):
        def __init__(self, name, area):
            self.name = name
            self.area = area
    
        def __str__(self):
            return '家具名字是%s,占地面积是%s' % (self.name, self.area)
    
    
    jia1 = Home('盘古大观', 300)
    print(jia1)
    bed1 = Furniture('双人床', 4)
    print(bed1)
    youyongchi = Furniture('游泳池',200)
    jia1.add_furniture(youyongchi)
    print(jia1)
    jia1.add_furniture(bed1)
    print(jia1)
    

      

                                                                       -------  知识无价,汗水有情,如需搬运请注明出处,谢谢!

  • 相关阅读:
    [蓝桥杯] 第39级台阶
    [蓝桥杯] 马虎的算式
    POJ 1142 Smith Numbers(史密斯数)
    HDU 1181 变形课
    HDU 1728 逃离迷宫
    HDU 2188 悼念512汶川大地震遇难同胞――选拔志愿者 巴什博奕
    HDU 2177 取(2堆)石子游戏 (威佐夫博弈)
    HDU 1847 Good Luck in CET-4 Everybody! 博弈
    HDU 1525 Euclid's Game
    HDU 1517 A Multiplication Game 博弈
  • 原文地址:https://www.cnblogs.com/wf-skylark/p/9009299.html
Copyright © 2011-2022 走看看