首页 > 解决方案 > 代码在开头没有输入的情况下工作,为什么?

问题描述

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

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

标签: pythonif-statementinput

解决方案


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

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

推荐阅读