Python错误类型错误:无法连接“str”和“int”对象

2024-09-25 10:32:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在从一本叫Hello World 2nd Edition的书中学习。在

在第14章第171页,我必须写一个程序。 我写的是:

class HotDog:
    def __init__(self):
        self.cooked_level = 0
        self.cooked_string = "Raw"
        self.condiments = []
    def __str__(self):
        msg = "hot dog"
        if len(self.condiments) > 0:
            msg = msg + "with"
        for i in self.condiments:
            msg = msg+i+", "
        msg = msg.strip(", ")
        msg = self.cooked_string + " " + msg +"."
        return msg
    def cook(self, time):
        self.cooked_level=self.cooked_level+time
        if self.cooked_level > 8:
            self.cooked_string = "charcoal"
        elif self.cooked_level > 5:
            self.cooked_string = "Well-done"
        elif self.cooked_level > 3:
            self.cooked_level = "Medium"
        else:
            self.cooked_string = "raw"
    def addCondiemnet(self, condiment):
        self.condiments.append(condiment)

myDog = HotDog()
print myDog
print "Cooking my Hot Dog for 4 minutes...."
myDog.cook(4)
print myDog
print "Cooking hot dog for 3 more Minutes"
myDog.cook(3)
print myDog
print "What happens if I cook it for 10 more minutes?"
myDog.cook(10)
print myDog
print "Now, im going to add some stuff to my hot dog"
myDog.addComdiment("ketchup")
myDog.addComdiment("More ketchup")
myDog.addComdiment("AND More ketchup")
print myDog

如果我运行它,我会得到错误消息:

^{pr2}$

如果你知道问题,那么请回答。在


Tags: selfforstringifdefmsglevelprint