python面向对象编程练习_Python中的面向对象编程练习

封装部分:

1.打印小猫爱吃鱼,小猫要喝水

class Cat:

def eat(self):

print '小猫爱吃鱼'

def drink(self):

print '小猫要喝水'

tom = Cat()

tom.eat()

tom.drink()

2.小明爱跑步,爱吃东西。

1)小明体重75.0公斤

2)每次跑步会减肥0.5公斤

3)每次吃东西体重会增加1公斤

4)小美的体重是45.0公斤

class Person:

def __init__(self, name, weight):

self.name = name

self.weight = weight

def __str__(self):

return '我的名字叫 %s 体重是 %.2f' % (self.name, self.weight)

def run(self):

print '%s 爱跑步' % self.name

self.weight -= 0.5

def eat(self):

print '%s 吃东西' % self.name

self.weight += 1

xx = Person('小明', 75.0)

xx.run()

xx.eat()

print xx

xm = Person('小美', 45.0)

xm.run()

xm.eat()

print xm

print xx

3.摆放家具

需求:

1).房子有户型,总面积和家具名称列表

新房子没有任何的家具

2).家具有名字和占地面积,其中

床:占4平米

衣柜:占2平面

餐桌:占1.5平米

3).将以上三件家具添加到房子中

4).打印房子时,要求输出:户型,总面积,剩余面积,家具名称列表

class HouseItem:

def __init__(self, name, area):

self.name = name

self.area = area

def __str__(self):

return '[%s] 占地 %.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 '户型:%s\n总面积:%.2f[剩余:%.2f]\n家具:%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

bed = HouseItem('bed', 400)

print bed

chest = HouseItem('chest', 2)

print chest

table = HouseItem('table', 1.5)

print table

my_ho

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值