2016-11-13 14 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のif文が実行されていない場合

答えて

0

if number is x1: 

を使用すると、変数numberが変数x1であれば(つまり、それらの値は、コンピュータメモリ内の同じ場所を占有しない)テスト、およびないされてそこに値が同じ場合。

使用:文字列が整数と同じインスタンスになることはありませんので、

if number is x1 : 

は必ず失敗します。

if number == str(x1): 
0

inputは、文字列、したがって、小切手を返します。

は、代わりに整数に変換し、等価性をチェック:

number = int(input()) 
x1 = randint(0, 9) 
if number == x1: 
    print("You guessed it right") 
関連する問題