首页 > 解决方案 > 为什么此代码只返回“问候!” 不管输入?

问题描述

我正在解决“使无聊的东西自动化”一书中的一些练习题,我很难理解为什么下面的代码只会产生“问候!” 作为输出。

print('What does spam equal? Hint: Try a number between 1 and 3')
spam = input()
if spam == 1:
    print('Hello')
elif spam == 2:
    print('Howdy')
else:
    print('Greetings!')

标签: python

解决方案


这是因为input()返回的字符串永远不等于整数。尝试

spam = int(input())

反而。ValueError如果输入不是整数,这当然会抛出 a 。


推荐阅读