1

在最后一行中,我试图将输出四舍五入,但是当我测试这个时,我得到了一个意外的 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)
4

3 回答 3

3

最后一行应该是:

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

你错过了一个右括号。

完整的错误消息可能是“解析时出现意外的 EOF”,这确实有点神秘。专业提示:以后,如果您发现一些您不理解的错误,请始终将完整的错误消息直接输入 Google。在大多数情况下,其他人已经问过同样的问题

于 2013-09-24T19:17:51.517 回答
2

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

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

实际上,你可以让你的代码行是这样的:

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

不需要那些额外的括号。

于 2013-09-24T19:17:51.447 回答
0

您在末尾缺少一个右括号:

print ("your average is: ", round((scoreSum / count), 2))
                                                        ^ THIS
于 2013-09-24T19:17:58.403 回答