2016-11-13 3 views
1
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 заявление не выполняется. Из-за того, что оператор == не используется?если инструкция в python не выполняется

ответ

0

С помощью:

if number is x1: 

вы проверяете, если переменная number является переменной x1 (т.е. делать их значения занимают то же место в памяти компьютеров), и не если там значения одинаковы ,

Использование:

if number == str(x1): 
0

input возвращает строку и, следовательно, проверка:

if number is x1 : 

всегда подведет, потому что строка никогда не будет такой же экземпляр в виде целого числа.

Вместо преобразования в целое число и проверить равенство:

number = int(input()) 
x1 = randint(0, 9) 
if number == x1: 
    print("You guessed it right") 
Смежные вопросы