程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

【Python】初學class概念引例--添加家具

編輯:Python

房子添加家具例子

初學面向對象難免有點犯暈,希望這個引例可以幫到你。

房子內部添加家具,依據家具占地面積大小,判斷能否添加該家具,能的話添加進去,房子剩余面積變小,家具名稱進入家具列表,否則直接提示面積過大,無法添加。

Code:

class HouseItem:
"""創建家具類"""
def __init__(self, name, area):
self.name = name
self.area = area
def __str__(self):
return "[%s] area is %.2f" % (self.name, self.area)
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 ("House type:%s\narea is %.2f[free: %.2f]\nhouseitem: %s"
% (self.house_type, self.area, self.free_area, self.item_list))
def add_item(self, item):
"""添加家具函數"""
print("Add %s" % item)
# 判斷家具面積
if item.area > self.free_area:
print("%s area is too large,unable to add" % item.name)
return
# 將家具添加到列表
self.item_list.append(item.name)
# 計算剩余面積
self.free_area -= item.area
# 引用家具類(創建家具對象)
bed = HouseItem("bed", 20)
chest = HouseItem("chest", 5)
table = HouseItem("table", 100)
print(bed)
print(chest)
print(table)
# 創建房子對象
my_home = House("Two rooms and one hall", 60)
my_home.add_item(bed)
my_home.add_item(chest)
my_home.add_item(table)
print(my_home)

Picture:


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved