Python 2.7 使用输入时如何检查输入的值是整数还是字符串

Python 2.7 使用输入时如何检查输入的值是整数还是字符串,python-2.7,Python 2.7,我写了一个程序,你猜一个随机生成的数字在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:

我写了一个程序,你猜一个随机生成的数字在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")
来自随机导入randint
玩
打印“猜测1到100之间的数字”
而play=='y':
x=randint(1100)
猜测=1000
猜猜看!=x:
猜测=输入(“猜测:”)
如果猜测x:
打印“下”
把它打印出来!干得好编号为“+str(x)
play=raw_input('是否要再次播放(y/n)?:')
原始输入(“按下退出”)

当用户输入非整数的猜测时,如何打印非数字,然后允许他们继续猜测?

使用
while True
循环重复问题,直到
中断。打破循环的唯一方法是如果
try
没有引发
ValueError
int()

另外,使用
raw\u input
代替
input
(注意:raw\u input为
guess
指定一个字符串)

更具体地说,在猜测时将其插入
while guess!=x:
如果猜测
,则在
之前

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