Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103662
  • 博文数量: 21
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 231
  • 用 户 组: 普通用户
  • 注册时间: 2014-12-16 16:23
文章分类

全部博文(21)

文章存档

2017年(3)

2016年(9)

2015年(9)

我的朋友

分类: Python/Ruby

2015-09-10 11:38:49


  1. # coding:utf-8

  2. class Human(object):
  3.     def __init__(self, name):
  4.         self.name = name

  5.     def speak(self, words):
  6.         print self.name, 'say', words

  7. class Boy(Human):
  8.     def buy_food(self, food):
  9.         print self.name, 'buy', food

  10. class Girl(Human):
  11.     def cook_food(self, food):
  12.         print self.name, 'go to cook', food

  13. class SalesPerson(Human):
  14.     price_sheet = None

  15.     def check(self, good_name):
  16.         price = self.price_sheet.get(good_name)
  17.         if not price:
  18.             self.speak('sorry,没有'%s % good_name)
  19.             return
  20.         self.speak('%s卖%s钱' % (good_name, price))
  21.         return price

  22.     def sale(self, good_name, money):
  23.         Food = self.good_sheet.get(good_name)
  24.         food = Food(good_name, money)
  25.         self.speak('给你%s' % food)
  26.         return food



  27. class Food(object):
  28.     def __init__(self, name, price):
  29.         self.name = name
  30.         self.price = price
  31.     def __str__(self):
  32.         return '%s价格:%s' % (self.name, self.price)



  33. class Vegetable(Food):
  34.     pass


  35. class Meat(Food):
  36.     pass

  37. dabai = Boy('dabai')
  38. dahong = Girl('dahong')

  39. dabai.speak('我饿了,想吃饭不会做,大红可以帮我吗?')
  40. dahong.speak('可以,你去买菜吧')
  41. dahong.speak('一颗白菜,一斤肉')

  42. check_list = ['白菜', '五花肉']
  43. sales = SalesPerson('卖菜的')
  44. sales.price_sheet = {
  45.         '白菜': 3,
  46.         '五花肉': 15,
  47.     }

  48. sales.good_sheet = {
  49.         '白菜': Vegetable,
  50.         '五花肉':Meat
  51.     }
  52. food_list = []    
  53. for food_name in check_list:
  54.     dabai.buy_food(food_name)
  55.     price = sales.check(food_name)
  56.     if price:
  57.         food = sales.sale(food_name, price)
  58.         food_list.append(food)
  59. for food in food_list:
  60.     dahong.cook_food(food)


阅读(1440) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~