|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
场景:在猜数游戏中,如果用户输入非整型数据,程序会异常崩溃,现在要做的就是检查异常,完善用户体验
需求:把检查异常放进循环体,用户输入一次,就检查一次
代码:
- import random
- secret=random.randint(1,10)
- count=1
- while count:
- try:
- temp=input("输入数字")
- guess=int(temp)
- except ValueError:
- print ("输入错误")
- if guess ==secret:
- print ("猜中了")
- count=0
- else:
- if guess >secret:
- print ("大了")
- else:
- print ("小了")
复制代码
问题:为什么输入字符a, 运行的结果是“输入错误”——>“大了”——>"输入数字"
难道不是捕捉到异常后返回到循环体的开始部分吗?
对输入的字符判断是不是数字即可
参考代码:
- import random
- secret=random.randint(1,10)
- count=1
- while count:
- temp=''
- while not temp.isdigit():
- temp=input("输入数字")
- guess=int(temp)
- if guess ==secret:
- print ("猜中了")
- count=0
- else:
- if guess >secret:
- print ("大了")
- else:
- print ("小了")
复制代码
|
|