欢迎访问宙启技术站
智能推送

exceptions:Python中的模板异常处理

发布时间:2023-12-11 10:14:44

异常处理是在程序运行过程中出现错误时,将错误信息捕获并进行处理的一种机制。Python中的异常处理使用 try-except 语句来实现。

try-except 语句的一般形式是:

try:
    # 可能会出现异常的代码
except ExceptionType as e:
    # 处理异常的代码

其中,try 块包含可能会出现异常的代码,如果其中的代码发生异常,程序会跳过后续的代码,直接执行 except 块中的代码。ExceptionType 表示异常的类型,例如 ZeroDivisionError、TypeError、ValueError 等,可以自定义异常。

下面是几个常见的异常类型以及其使用示例:

1. ZeroDivisionError:除法运算的除数为 0 时触发。例如:

try:
    result = 1 / 0
except ZeroDivisionError as e:
    print("除数不能为零")

输出:

除数不能为零

2. TypeError:操作数类型错误时触发。例如:

try:
    result = "1" + 2
except TypeError as e:
    print("操作数类型错误")

输出:

操作数类型错误

3. ValueError:传入无效参数时触发。例如:

try:
    result = int("abc")
except ValueError as e:
    print("无效参数")

输出:

无效参数

4. FileNotFoundError:文件不存在时触发。例如:

try:
    f = open("nonexistent.txt")
except FileNotFoundError as e:
    print("文件不存在")

输出:

文件不存在

5. IndexError:索引越界时触发。例如:

try:
    lst = [1, 2, 3]
    result = lst[3]
except IndexError as e:
    print("索引越界")

输出:

索引越界

6. KeyError:字典不存在的键时触发。例如:

try:
    dct = {"a": 1, "b": 2}
    result = dct["c"]
except KeyError as e:
    print("键不存在")

输出:

键不存在

除了以上示例中的异常类型,Python 还提供了其他许多异常类型,可以根据需要灵活使用。在 except 块中,可以根据具体的需求进行异常处理,例如打印错误信息、重新抛出异常、记录日志等。