神刀安全网

python面向对象应用案例:烧鸡翅


需求分析

烧鸡翅的流程分解为:烧烤和加调料

用面向对象的方式来实现,必须定义鸡翅类,有以下属性:烧烤的时间,生熟程度,调味品。以及以下方法:烧烤,添加调料

烧烤时间与生熟时间的关联:

  • 0-3分钟:生的
  • 3-5分钟:半生不熟
  • 5-8分钟:熟了
  • 大于8分钟:焦了
python面向对象应用案例:烧鸡翅

烧鸡翅

代码实现如下:

class Wing():     """烧鸡翅"""      def __init__(self):         print('----烧鸡翅,我最中意食-----')         self.cookedLevel = 0  # 烧鸡翅的时间         self.cookedString = '生的'  # 生熟程度         self.condiments = []  # 调味         print('刚买的鸡翅是生的,没有调料')      def cook(self, time):         self.cookedLevel += time         if self.cookedLevel > 8:             self.cookedString = '烧焦了'         elif self.cookedLevel > 5:             self.cookedString = '烧好了'         elif self.cookedLevel > 3:             self.cookedString = '半生不熟'         else:             self.cookedString = '生的'      def addCondiments(self, condiments):         print('---添加调料---')         self.condiments.append(condiments)      def __str__(self):         print('----烧了%s分钟---' % self.cookedLevel)         msg = '鸡翅的生熟度:' + self.cookedString         if len(self.condiments) > 0:             msg = msg + "/n调料有:"             for temp in self.condiments:                 msg = msg + temp + ', '             msg = msg.rstrip(', ')         return msg   wing = Wing()  print('----开始烧鸡翅----') wing.cook(4) print(wing)  wing.addCondiments('酱油')  wing.cook(3) print(wing)  wing.addCondiments('芝麻') wing.cook(1) print(wing)  wing.cook(2) print(wing) 

结果:

----烧鸡翅,我最中意食----- 刚买的鸡翅是生的,没有调料 ----开始烧鸡翅---- ----烧了4分钟--- 鸡翅的生熟度:半生不熟 ---添加调料--- ----烧了7分钟--- 鸡翅的生熟度:烧好了 调料有:酱油 ---添加调料--- ----烧了8分钟--- 鸡翅的生熟度:烧好了 调料有:酱油, 芝麻 ----烧了10分钟--- 鸡翅的生熟度:烧焦了 调料有:酱油, 芝麻 

转载本站任何文章请注明:转载至神刀安全网,谢谢神刀安全网 » python面向对象应用案例:烧鸡翅

分享到:更多 ()

评论 抢沙发