Python代码错误,代码无法正常工作

时间:2013-11-30 01:08:37

标签: python

在第4行之后,即使你输入“是”之外的其他内容,它仍然打印好吗?

x = input("Enter any number of your choice: ")
print("the number you picked is", x)
yes = x
input("       right? : ")

if yes:
    print("ok")
else:
    print("you liar")

3 个答案:

答案 0 :(得分:2)

除非您在提示时没有输入任何内容:

x = input("Enter any number of your choice: ")

if yes: # it's always going to be true

这也没有做任何事情:

input("       right? : ")

您需要将其分配给变量 我想你想要的是:

sure = input("       right? : ")

if sure == 'yes':

答案 1 :(得分:1)

如果您想检查数字,可能需要使用isnumeric()。

有关isnumeric()的一些文档位于http://www.tutorialspoint.com/python/string_isnumeric.htm

目前,您基本上只是检查变量是否存在。

BTW:用于检查号码的输出可以重写为格式化语句,如下所示:

print("The number you picked is {:d} right?".format(x))

检查,如果用户回答“是”,也可以轻松完成:

yes = input("The number you picked is {:d} right?".format(x))
if (yes == "yes"):
    print("ok")
else:
    print("you liar")

对于python2.x,你应该使用raw_input()而不是input(),这对python3来说很好。

答案 2 :(得分:0)

您想要查看用户对“正确吗?”的评价。提示:

x = input("Enter any number of your choice: ")
print("the number you picked is", x)
yes = input("       right? : ") # capture the user input
if yes == "yes": # check if the user said yes
    print("ok")
else:
    print("you liar")