简单的IF ELSE语句不匹配算术答案

时间:2015-04-03 10:27:38

标签: python python-3.x if-statement

我正在进行数学测试,如果用户输入正确的输入,我希望它打印正确。我有这个

answer = (input) ("What is your answer?")
maths = eval(str(num1) + operation + str(num2))


if answer == maths:
    print ('Correct')

else:
    print('Wrong')

然而它不起作用。它打印不正确,只是打印错误输入是否正确。 干杯阿隆

1 个答案:

答案 0 :(得分:0)

input()返回字符串值,而不是整数。你不能比较整数和字符串,并期望它们是相等的:

>>> '42' == 42
False

首先将输入转换为整数:

answer = input("What is your answer?")
answer = int(answer)

如果输入不是数字,则可能导致ValueError异常。有关如何处理这种可能性的选项,请参阅Asking the user for input until they give a valid response