代码在开始时无需输入即可工作,为什么?

时间:2018-09-24 04:11:38

标签: python if-statement input

如果我一开始就删除了spam = input(),那么当我手动为spam赋值时,代码就起作用了。但是,如下所示,当系统提示我给spam赋值时,无论我给出什么,它都告诉我“问候!”。为什么?

spam = input()
if spam == 1:
    print('Hello')
elif spam == 2:
    print('Howdy')
else:
    print('Greetings!')

1 个答案:

答案 0 :(得分:2)

input返回一个字符串,但是您正在将其与整数文字(12)进行比较。一种选择是改为使用字符串文字:

if spam == '1': # Here
    print('Hello')
elif spam == '2': # And here
    print('Howdy')
else:
    print('Greetings!')