JomQ 发表于 2020-5-5 16:33:37

请问怎样改才能使try-except语句在我第二次输出错误时输出?谢谢各位大佬!

就比如我第一次输入3,第二次输入3.14,想在第二次输出不规范的情况下,输出try-except语句使程序不报错。请各位大佬指点 !


import random
secret = random.randint(1,9)
times = 3

try:
    temp = input('猜猜我心里想的是什么数字呀?\n')
    guess = int(temp)
except (ValueError,EOFError,KeyboardInterrupt):
    print('嘤嘤嘤,输入错误惹!')
    guess = secret

while (guess != secret):

    times -= 1
    if guess == secret:
      print('猜对咯,真棒!^_^')

    else:
      if guess > secret:
            print('大了大了~~')
      else:
            print('小了小了~~')

      if times > 0:
            print('还有%d次机会,再猜一次吧~   '% times)
      else:
            print('机会用完了QAQ!,答案是%d,再玩一次吧~   '% secret)
            break

    temp = input()
    guess = int(temp)

   
print('游戏结束啦!^_^')

liuzhengyuan 发表于 2020-5-5 16:35:41

判断是否是整数
if int(guess) == guess:

wuqramy 发表于 2020-5-5 16:43:32

猜错了再来一遍try啊

JomQ 发表于 2020-5-5 19:51:16

wuqramy 发表于 2020-5-5 16:43
猜错了再来一遍try啊

我复制了一遍放在了while循环里,报错了。。。。。。

JomQ 发表于 2020-5-5 19:53:12

liuzhengyuan 发表于 2020-5-5 16:35
判断是否是整数

是把try放进if里吗?

liuzhengyuan 发表于 2020-5-5 19:55:03

本帖最后由 liuzhengyuan 于 2020-5-5 19:57 编辑

JomQ 发表于 2020-5-5 19:53
是把try放进if里吗?

你的意思是想让程序认为小数是违规的对吧
那就放进 except:
在 excpet 里判断是否为小数
如果是小数,那就 guess = secret

_2_ 发表于 2020-5-6 15:59:25

JomQ 发表于 2020-5-5 19:53
是把try放进if里吗?

把 try 放在最外层,while 放里面
页: [1]
查看完整版本: 请问怎样改才能使try-except语句在我第二次输出错误时输出?谢谢各位大佬!