如何检查是否输入了一个值使用输入

问题描述:

时写在那里你猜1和100之间的随机生成的数字中的程序是一个整数或者字符串:如何检查是否输入了一个值使用输入

from random import randint 
play='y' 
print 'Guess a number between 1 and 100' 

while play=='y': 
    x = randint(1,100) 
    guess=1000 
    while guess != x: 
     guess=input('Guess: ') 
     if guess < x: 
      print 'Higher' 
     if guess > x: 
      print 'Lower' 
    print 'You got it! Good Job! The number was ' + str(x) 
    play=raw_input('Would you like to play again(y/n)?: ') 

raw_input("Press <enter> to exit") 

当用户进入一个猜测,是不一个整数如何打印这不是一个数字,然后让他们继续猜测?

使用一个while True循环重复该问题,直到它breaks。如果try不会产生ValueError,则只有这样才能打破循环。 int()在遇到类似'hello''1.2'时会产生错误。

此外,使用raw_input而不是input(注意:raw_input将字符串分配给guess)。

while True:  
    guess=raw_input('Guess: ') 
    try: 
     int(guess)   
     break 
    except ValueError: 
     print '\nNot an int, try again.' 

更具体地,后while guess != x:if guess < x之前插入此。