# this program would keep prompting the user for an integer input.
while True:
a=int(input("Enter integer: "))
b=int(input("Enter another integer: "))
print(a/b)
# this program handles ValueError and ZeroDivisionError exceptions
while True:
try:
a=int(input("Enter integer: "))
b=int(input("Enter another integer: "))
result=a/b
except ValueError:
print("Input is not integer.")
except ZeroDivisionError:
print("Division by 0 is not supported.")
else:
print(result)
print("\n")
此外,您可以像这样处理所有异常:
方案3:
while True:
try:
a=int(input("Enter integer: "))
b=int(input("Enter another integer: "))
result=a/b
except Exception:
print("An error occured.")
else:
print(result)
print("\n")
如果出现用户定义的异常,请执行以下操作:
class MyException(Exception):
pass
while True:
a=int(input("Enter integer: "))
b=int(input("Enter another integer: "))
if b==0:
raise MyException
print("\n")
方案1:
运行程序并保持输入。如果一切正常,它将打印两个整数的除法。现在 案例1:如果您输入一个随机字符串会怎么样? 案例2:或者如果在b变量的位置输入0呢
请随意测试它。你会看到, i) 案例1引发ValueError异常 ii)案例2引发了零错误异常
现在,您需要处理这些异常。你怎么能做到?以下是方法:
方案2:
此外,您可以像这样处理所有异常:
方案3:
如果出现用户定义的异常,请执行以下操作:
以后想抓就抓
程序3不是一个好的实践。永远不要默默地传递错误。您可以通过子类化python的异常类来利用它
相关问题 更多 >
编程相关推荐