Python 中 raise 语句的常见应用场景有哪些

2023-04-01 00:00:00 语句 场景 常见

Python 中的 raise 语句用于抛出异常,常见的应用场景有:

抛出自定义异常:使用 raise 语句抛出自定义的异常,可以通过创建一个继承自 Exception 的类来实现。例如:

class MyException(Exception):
    pass

def func():
    raise MyException("pidancode.com")

try:
    func()
except MyException as e:
    print(e)

输出:

pidancode.com

抛出内置异常:Python 内置了许多异常类,可以通过 raise 语句抛出这些异常。例如:

def divide(x, y):
    if y == 0:
        raise ZeroDivisionError("皮蛋编程")
    return x / y

try:
    divide(1, 0)
except ZeroDivisionError as e:
    print(e)

输出:

皮蛋编程

在异常处理中重新抛出异常:有时候我们需要在异常处理过程中重新抛出异常,可以使用 raise 语句并不带任何参数。例如:

def func():
    try:
        int("pidancode.com")
    except ValueError as e:
        print("ValueError occurred: ", e)
        raise

try:
    func()
except ValueError:
    print("Exception was re-raised")

输出:

ValueError occurred:  invalid literal for int() with base 10: 'pidancode.com'
Exception was re-raised

以上是 raise 语句的一些常见应用场景,它们可以帮助我们更好地处理异常情况,提高代码的健壮性。

相关文章