捕获和抛出自定义异常的解决方法如下:
class MyException(Exception):
def __init__(self, message):
self.message = message
def divide(a, b):
if b == 0:
raise MyException("除数不能为零")
return a/b
try:
result = divide(10, 0)
except MyException as e:
print("捕获到自定义异常:", e.message)
except Exception as e:
print("捕获到其他异常:", str(e))
在上述的代码示例中,我们定义了一个自定义异常类 MyException,并在 divide 函数中判断除数是否为零,如果是则抛出自定义异常。在主程序中使用 try-except 块捕获自定义异常,并输出异常信息。
注意,捕获自定义异常时,应将自定义异常放在更具体的异常之前,避免被更一般的异常捕获。
下一篇:捕获和平均ping时间