Python中 類和對象調用其他類中的變量和方法


class house_item:
def __init__(self,name,area):

self.name=name
self.area=area
def __str__(self):
return "%s,\n面積是%.2f" % (self.name,self.area)


class house:
def __init__(self,house_type,house_area):
self.type=house_type
self.area=house_area
self.free_area=house_area
self.itemlist=[]
def __str__(self):
return ("房子類型:%s\n房子面積:%.2f\n房子剩余面積:%.2f\n房子家具列表:%s\n"
%(self.type,self.area,self.free_area,self.itemlist))

def additem(self,item):
print("要添加的家具是:%s"%item)
if item.area >self.free_area:
return "家具面積大,不能添加"
self.free_area -=item.area
self.itemlist.append(item.name)


bed=house_item("床",4)
myhome=house("兩室一廳",60)
myhome.additem(bed)
print(myhome)


輸出:

要添加的家具是:床,
面積是4.00
房子類型:兩室一廳
房子面積:60.00
房子剩余面積:56.00
房子家具列表:['床']

 

簡單說明一下學習過程吧,一開始不明白為什么會在myhome 對象中可以通過一個bed,進行傳兩個值

后來發現是通過myhome對象調用了bed對象(bed對象中有兩個參數),通過item.area進行調用,

我的理解是如下圖:

有寫的不對的地方請大神提出,指點,共同交流!分享記錄下,給新人指路吧!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM