如果python中的语句没有执行

时间:2016-11-13 09:12:58

标签: python-3.x

from random import randint
proceed = "Y"
while(proceed == 'Y' or proceed == 'y'):
    print("Guess the Integer or 'exit'")
    number = input()
    x1 = randint(0, 9)
    if number is x1 :
        print("You guessed it right")
    else:
        print("number was ", x1)
    print("Do you want to continue, Y or N?")
    proceed = input()

在上面的代码中,if语句没有执行。是因为没有使用==运算符吗?

2 个答案:

答案 0 :(得分:0)

使用:

if number is x1:

您正在测试变量number是否为变量x1(即它们的值是否占据计算机内存中的相同位置),如果有值,则同样的。

使用:

if number == str(x1):

答案 1 :(得分:0)

input返回一个字符串,因此检查:

if number is x1 :

将始终失败,因为字符串永远不会是与整数相同的实例。

而是转换为整数并检查是否相等:

number = int(input())
x1 = randint(0, 9)
if number == x1:
    print("You guessed it right")