Python表达式打印错误但传递if

时间:2017-09-19 09:19:57

标签: python math

Example

如果您看到上面的图片,您会看到我有一个基本的乘法游戏。根据输入的答案是否与正确答案相同,我打印出真或假。

你会看到这个或者12 x 2的问题我输入了错误的答案并打印出False。但是我的最终得分为10,这意味着它必须通过IF声明,并在我的分数中加1。

我不知道为什么会这样或者它是如何发生的。当我输入一个超过100的错误答案时,我能够复制它。

4 个答案:

答案 0 :(得分:2)

您的while循环执行了11次。所以你真的得到11分中的10分。 将循环中的<=更改为<

答案 1 :(得分:2)

见到你问了11个问题而不是10个

你的程序从0跑到10(总共11次)

答案 2 :(得分:1)

尝试将最后一行更改为以下内容:

print("You got {0} out of {1}".format(points, answered))

通过这种方式,它总是打印出已回答的问题数量,而不是硬编码值(当你发生错误时硬编码的那个)

答案 3 :(得分:1)

您只需稍微更改一下这样的代码,它就会对您有用:

print("you got" + str(points) + "out of" + answered)

你会看到你的答案不是10而是11,你使用

while answered <= 10: 

不是

answered < 10:

这意味着它将运行超过您需要的一个。