当前位置: 首页 > 图灵资讯 > 技术篇> 如何创建自定义异常并正确抛出?

如何创建自定义异常并正确抛出?

来源:图灵教育
时间:2024-08-18 23:26:18

创建自定义异常类:继承 python 内置的 exception 类。定义构造函数接收异常信息。可选:重写 __str__() 提供自定义异常信息的方法。抛出自定义异常:使用: raise 关键字。实战案例:验证整数列表中的所有数字都在指定范围内。创建自定义异常类别 invalidrangeexception。调用 validate_range() 验证函数。使用 try-except 捕获 invalidrangeexception 并打印错误信息。

如何创建自定义异常并正确抛出?

怎样创建自定义异常并正确抛出? 创建自定义异常类

要创建自定义异常类,请执行以下步骤:

  1. 继承 Python 内置的 Exception 类。
  2. 定义构造函数以接收与异常相关的详细信息。
  3. 可选:重写 __str__() 提供异常自定义信息的方法。

class CustomException(Exception):
    def __init__(self, message):
        super().__init__(message)

抛出自定义异常

抛出自定义异常,请使用 raise 关键字。

raise CustomException("错误消息")

实战案例

场景:验证整数列表中所有数字的范围。

异常自定义类:

class InvalidRangeException(Exception):
    def __init__(self, number, min_range, max_range):
        super().__init__(f"数字 {number} 不在 {min_range} 和 {max_range} 范围内")

调用代码:

def validate_range(numbers, min_range, max_range):
    for number in numbers:
        if number < min_range or number > max_range:
            raise InvalidRangeException(number, min_range, max_range)

用法:

try:
    validate_range([10, 20, 30], 5, 25)
except InvalidRangeException as e:
    print(e)

输出:

数字 10 不在 5 和 25 范围内

以上是如何创建自定义异常并正确抛出?详情请关注图灵教育其他相关文章!