python错误; +:'int'和'str'的不支持的操作数类型

时间:2014-05-01 00:58:01

标签: python python-2.7 python-2.x

我是python的新手,当我正在处理这段代码时,我一直收到第8行的错误,上面写着“不支持的操作数类型为+:'int'和'str'”,但我不知道如何解决它/它有什么问题。

minTot = 0
stepTot = 0
min = int(raw_input("Input the number of minutes (0 to exit): "))
if min == 0:
    print "No minutes input."
else:
    while min != 0:
        minTot = minTot + min
        stepRate = int(raw_input("Input the step rate: "))
        stepTot = stepTot + stepRate * min
        min = raw_input("Input the next number of minutes (0 to exit): ")
    print "\nTotal number of minutes:", min
    print "Total number of steps:", stepTot
    # Average is rounded down.
print " Average step rate per minute : ", minTot / stepTot

1 个答案:

答案 0 :(得分:1)

我相信你使用的是Python 2.7。 (您可以使用python --version进行确认)问题出在此行

min = raw_input("Input the next number of minutes (0 to exit): ")

raw_input会返回一个字符串,您需要将其显式转换为int的数字,如下所示

min = int(raw_input("Input the next number of minutes (0 to exit): "))

如果你不这样做,min将是一个字符串,并在下一次迭代时,到达

minTot = minTot + min

minTot将是一个数字,您正在尝试添加带有数字的字符串。这是不可能的。这就是Python抛出该错误的原因。

除此之外,min是内置函数的名称。您可能不想影响该功能。所以,使用另一个变量名。