• 面向对象封装案例


    class HouseItem:
        def __init__(self, name, area):
            self.name = name
            self.area = area
    
        def __str__(self):
            return ('[%s]占地面积为%.2f' %(self.name, self.area))
    
    
    bed = HouseItem('bed', 4.0)
    chest = HouseItem('chest', 2.0)
    table = HouseItem('table', 1.5)
    
    print(bed)
    print(chest)
    print(table)
    
    print('*' * 50)
    class House:
        def __init__(self, house_type, area):
            self.house_type = house_type
            self.area = area
    
            self.free_area = area
            self.item_list = []
    
        def __str__(self):
            return ('户型: %s 
    总面积:%.2f[剩余:%.2f]
    家具:%s'
                    %(self.house_type, self.area,
                      self.free_area, self.item_list))
    
        def add_item(self, item):
            print('要添加%s' % item)
            if item.area > self.free_area:
                print('%s的面积太大,不能添加到房子中' % item.name)
                return
            self.item_list.append(item.name)
            self.free_area -= item.area
    
    
    my_home = House('两室一厅', 60)
    my_home.add_item(bed)
    my_home.add_item(table)
    my_home.add_item(chest)
    print(my_home)
  • 相关阅读:
    spring security 学习资料
    设计模式,学习资料
    知名博主
    shiro 学习资料
    nuxt 中使用 koa-session
    koa-session 知识点
    MySQL 中的默认数据库介绍
    JUnit 学习资料
    027_git添加多账号设置
    023_supervisorctl管理服务注意事项
  • 原文地址:https://www.cnblogs.com/godlove/p/10108045.html
Copyright © 2020-2023  润新知