异常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验证程序逻辑,而非异常处理