Python 与用户输入进行数字比较时,始终会产生;“不相等”;结果

Python 与用户输入进行数字比较时,始终会产生;“不相等”;结果,python,python-3.x,if-statement,user-input,comparison-operators,Python,Python 3.x,If Statement,User Input,Comparison Operators,我想获得用户通过input()输入的数字,并将其与特定值进行比较,即3 然而,我的印象是我的if语句不起作用。比较总是False Start = input() if Start == 3: print ("successful") Python3输入函数返回字符串 像这样试试 start = input("-->: ") if start == "3": print("successful") Python3输入函数返回字符串 像这样试试 start = input

我想获得用户通过
input()
输入的数字,并将其与特定值进行比较,即
3

然而,我的印象是我的if语句不起作用。比较总是
False

Start = input()
if Start == 3:
     print ("successful")

Python3输入函数返回字符串

像这样试试

start = input("-->: ")
if start == "3":
    print("successful")

Python3输入函数返回字符串

像这样试试

start = input("-->: ")
if start == "3":
    print("successful")

您应该检查选项卡(我建议您使用四个空格,而不是常规选项卡,并且不要混合使用)


您应该检查选项卡(我建议您使用四个空格,而不是常规选项卡,并且不要混合使用)


您也可以尝试以下方法:

添加int将变量转换为int数据类型

input = int(raw_input("Enter a num: "))
if input == 3:
   print "Successful"

您也可以尝试以下方法:

添加int将变量转换为int数据类型

input = int(raw_input("Enter a num: "))
if input == 3:
   print "Successful"

您可以自己做一些事情来找到问题的根源:

了解对象类型的方法:

print(type(start)) # prints <class 'str'>
print(repr(start)) # prints '3'
打印(键入(开始))#打印
打印(报告(开始))#打印“3”
与Python2.x不同,函数
input()
返回一个string对象(并且不会盲目地使用用户提供的表达式):

输入([提示]):

如果存在prompt参数,则将其写入标准输出,而不带尾随换行符然后函数从输入中读取一行,将其转换为字符串(去掉尾随的换行符),并返回该字符串。[…]

这应该给出一个解决方法(将数字与数字进行比较)

进一步阅读:


您可以自己做一些事情来找到问题的根源:

了解对象类型的方法:

print(type(start)) # prints <class 'str'>
print(repr(start)) # prints '3'
打印(键入(开始))#打印
打印(报告(开始))#打印“3”
与Python2.x不同,函数
input()
返回一个string对象(并且不会盲目地使用用户提供的表达式):

输入([提示]):

如果存在prompt参数,则将其写入标准输出,而不带尾随换行符然后函数从输入中读取一行,将其转换为字符串(去掉尾随的换行符),并返回该字符串。[…]

这应该给出一个解决方法(将数字与数字进行比较)

进一步阅读:


您应该检查选项卡(我建议您使用四个空格,不要使用常规选项卡,也不要混合使用)。问候您应该检查选项卡(我建议您使用四个空格,而不是常规选项卡,并且不要混合使用它们)。欢迎这是如何在Python2.x中实现的(但是,应该注意的是,内置函数
input()
)是隐藏的)。好吧,那么,也许只是一种替代方法@Moooeeep,感谢您指出这是在Python2.x中实现的方法(但是,应该注意的是,内置函数
input()
是隐藏的)。好吧,那么,也许只是另一种选择@Moooeeep,谢谢你指出这一点