zoukankan      html  css  js  c++  java
  • python面向对象编程:烤地瓜案例

    完整的代码为:

    class SweetPotato:
        """这是烤地瓜的类"""
    
        # 定义初始化方法
        def __init__(self):
            self.cookedLevel = 0
            self.cookedString = "生的"
            self.condiments = []
    
        # 定制print时的显示内容
        def __str__(self):
            msg = self.cookedString + " 地瓜"
            if len(self.condiments) > 0:
                msg = msg + "("
    
                for temp in self.condiments:
                    msg = msg + temp + ", "
                msg = msg.strip(", ")
    
                msg = msg + ")"
            return msg
    
        # 烤地瓜方法
        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):
            self.condiments.append(condiments)
    
    

    进行代码测试

    mySweetPotato = SweetPotato()
    print("------有了一个地瓜,还没有烤-----")
    print(mySweetPotato.cookedLevel)
    print(mySweetPotato.cookedString)
    print(mySweetPotato.condiments)
    print("------接下来要进行烤地瓜了-----")
    print("------地瓜经烤了4分钟-----")
    mySweetPotato.cook(4) #烤4分钟
    print(mySweetPotato)
    print("------地瓜又经烤了3分钟-----")
    mySweetPotato.cook(3) #又烤了3分钟
    print(mySweetPotato)
    print("------接下来要添加配料-番茄酱------")
    mySweetPotato.addCondiments("番茄酱")
    print(mySweetPotato)
    print("------地瓜又经烤了5分钟-----")
    mySweetPotato.cook(5) #又烤了5分钟
    print(mySweetPotato)
    print("------接下来要添加配料-芥末酱------")
    mySweetPotato.addCondiments("芥末酱")
    print(mySweetPotato)
    

  • 相关阅读:
    python format() 函数
    -bash: fork: Cannot allocate memory 问题的处理
    阿里云telnet 3306端口失败
    npm install报错 npm ERR! enoent ENOENT: no such file or directory
    springboot启动后总是自己shutdown
    thymeleaf给bootstrap自定义变量赋值
    java通过反射拷贝两个对象的同名同类型变量
    使用awk按照行数切割文件
    Iterable接口
    mac brew update 报错
  • 原文地址:https://www.cnblogs.com/faberbeta/p/13858049.html
Copyright © 2011-2022 走看看