python - 表达式的舍入值 - 意外的EOF

时间:2013-09-24 19:16:24

标签: python rounding

在最后一行我试图将输出舍入一个小数位,但是当我测试这个时,我得到一个意外的EOF错误。请帮帮忙?

count = 0
scoreSum = 0
score = 0
while score != 999:
    score = float(input("Enter test score or enter 999 to finish: "))
    if score > 0 and score < 100:
        scoreSum += score
        count += 1
    elif (score <0 or score > 100) and score != 999:
        print("This score is invalid, Enter 0-100")
else:
    print ("your average is: ", round((scoreSum / count), 2)

3 个答案:

答案 0 :(得分:3)

最后一行应该是:

print ("your average is: ", round((scoreSum / count), 2))

你错过了一个右括号。

完整的错误消息可能是“解析时意外的EOF”,这确实有点神秘。专业提示:将来,如果您发现一些您不理解的错误,请始终past the complete error message directly into Google。在大多数情况下,其他人already asked about the same problem

答案 1 :(得分:2)

最后一行是你的问题 - 你需要一个右括号:

print ("your average is: ", round((scoreSum / count), 2))
#                                            right here ^

实际上,您可以将您的代码行设为:

print("your average is: ", round(scoreSum / count, 2))

不需要那些额外的括号。

答案 2 :(得分:0)

您在结尾处缺少右括号:

print ("your average is: ", round((scoreSum / count), 2))
                                                        ^ THIS