异常Exception

异常Exception是程序运行时发生的意外事件,会导致程序中断执行。Python通过异常处理机制(Exception Handling)帮助开发者捕获并处理这些错误,使程序更健壮

异常的核心作用

1.错误捕获:识别代码中的潜在错误(如除以零,类型错误)

2.程序容错:允许程序在发生错误时继续运行(如重试或降级处理)

3.信息反馈:通过异常类型和消息定位问题根源

Python内置异常类型(部分常用)

异常类型 说明

ValueError 传入无效值(如int("abc"))

TypeError 操作类型不匹配(如"a" +1)

ZeroDivisionError 除以零(如5 / 0)

IndexError 索引超出范围

KeyError 字典中不存在的键(如d"x"当d没有键x)

FileNotFoundError 打开不存在的文件(如open("test.txt")

AttributeError 对象没有该属性(如"abc".to_upper())

异常处理语法(try_except)

1.基础语法

2.捕获多个异常

3.捕获所有异常(谨慎使用)

4.else块(无异常时执行)

5.finally块(无论是否异常都会执行)

自定义异常

1.创建自定义异常类

2.抛出异常

异常传播与处理链

异常会逐层向上传播,直到被捕获

实践

1.具体异常优先:优先捕获具体异常,而非通用的Exception

2.清理资源:在finally块中关闭文件,释放锁等

3.异常消息明确:自定义异常时提供有意义的错误信息

4.避免"吞掉"异常:捕获异常后至少记录日志

5.区分异常与错误:用assert验证程序逻辑,而非异常处理