温馨提示×

python主动抛出异常怎么实现

小亿
129
2023-12-16 18:31:49
栏目: 编程语言

在Python中,可以使用raise语句来主动抛出异常。raise语句后面可以跟一个异常类的实例,或者是一个异常类的类型和错误信息,以及其他的异常相关信息。

以下是一个示例,演示如何在函数中主动抛出异常:

def divide(x, y):
    if y == 0:
        # 使用异常类的实例来抛出异常
        raise ZeroDivisionError("除数不能为零")
    else:
        return x / y

try:
    result = divide(10, 0)
    print(result)
except ZeroDivisionError as e:
    print(e)

在上面的示例中,定义了一个divide函数来实现两个数相除的操作。如果除数为零,则使用raise语句抛出一个ZeroDivisionError异常,并传递了一个错误信息"除数不能为零"。

在try块中调用divide函数,由于除数为零,会抛出ZeroDivisionError异常。然后在except块中捕获并处理该异常,打印出错误信息。

运行上述代码,输出结果为:“除数不能为零”。

需要注意的是,raise语句可以抛出任何类型的异常,不仅限于内置的异常类。所以,在使用raise语句时,可以选择合适的异常类,或者自定义一个新的异常类来抛出。

0