python类之间变量互相调用_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进行调用,

我的理解是如下图:

1267715-20181215154343184-1421467669.png

有写的不对的地方请大神提出,指点,共同交流!分享记录下,给新人指路吧!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值