[英]Not catching specific errors with Try and Except
好的,所以我尝试使用 except 块来观察异常。 这都是正常的,但是当你有一个循环时,你通常不能停止代码,因为没有特定的位说“不要捕捉键盘中断错误”或类似的东西
有什么可以让我们尝试并且除了块排除特定错误的东西吗? (或替代方案)
我的代码
while 1:
if ques == 'n':
try:
newweight = int(input('Please enter a number'))
exit()
except:
print('Please enter a valid number')
现在这将创建一个无限循环,因为“exit()”不会发生,因为它会引发异常,因此它会创建一个无限循环。 有什么办法可以避免这种情况发生吗?
为了防止用户输入非整数值,您希望捕获 TypeError 以便您可以将except:
更改为except ValueError:
,然后它将捕获任何无效输入。 这应该足以覆盖你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.