python菜鸟问题,猜数字游戏出现报错

写了个猜数字的小游戏目前问题,如果输入的不是数字比如,英文字母或空格或不输入时,会出现报错,请问应该怎么写

这个是典型的异常处理,try except

这样,有异常会重新要求输入,程序不会中断

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-05-07
肯定的,因为你用int做了强制类型转换,如果输入的不是int类型就会报错,其实可以加个检测,如果输入不符合int类型自动忽略或者重新输入就好了追问

如何加检测,能否告知下吗

第2个回答  2019-05-07
def panduan():
    a = input('input:')
    for i in a:
        if ord(i) not in range(48, 58):
            print('不是数字')
            break
    else:
        b = int(a)
        print(b)


while True:
    panduan()

这种麻烦点,不过挺好玩的

本回答被网友采纳
第3个回答  2019-05-07
import random
answer = random.randint(1,100)
while True:
n = input('请输入1-100的数字:')
try:
n = int(n)
if n == answer:
break
else:
if n>answer:
print('数值过大')
else:
print('数值过小')
except:
pass
print('你赢了')

ps:我把你的答案变量名改成answer了,原谅我英文命名的强迫症

相似回答