if语句自动转到else语句

时间:2019-09-10 18:16:28

标签: python

当我运行代码并用3回答时,控制台显示答案是3。该代码仅是示例,我使用的是随机数代码。

我在if语句中的变量中提供了输入,然后删除了else语句

answer = input("Answer of 1 + 2 = ")

if answer == 3:
    print("You're right!")
else:
    print("The answer was 3")

正确的输出为You're right!

2 个答案:

答案 0 :(得分:0)

默认情况下,您从input()获得的值是字符串类型。如果您在控制台中写入3,则会得到

answer = "3"

"3" != 3

您需要将输入强制转换为int。在if语句之前添加以下行:

answer = int(answer)

请务必检查所键入的值实际上是一个int(您可以使用try catch语句来完成此操作,或者最好使用一会儿时间)

答案 1 :(得分:0)

进行救援的类型转换!

answer = input("Answer of 1 + 2 = ")

if int(answer) == 3:
#  ^^^
    print("You're right!")
else:
    print("The answer was 3")