python - 代码在开始时无需输入即可运行,为什么?

标签 python if-statement input

如果我在开始时删除 spam = input(),则当我手动为 spam 分配值时,代码将起作用。然而,如下所示,当我被提示为 spam 提供一个值时,无论我给出什么,它都会告诉我“Greetings!”为什么?

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

最佳答案

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

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

关于python - 代码在开始时无需输入即可运行,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52472607/

相关文章:

php - IF 规则 $_POST PHP - MYSQL

java - Libgdx(输入)按键似乎跳过了一些东西

c# - 如何通过正则表达式获取文本 "out of"

python - SQL炼金术: "create schema if not exists"

C++ if 语句故障

python - Matplotlib - 将子图添加到子图中?

java - 除以零而不出现 ArithmeticException

c - C语言删除文件中的特定行

python - 捕获生成器内的错误并随后继续

python - 每次运行时深度优先搜索输出都会发生变化