异常
一句话解释
异常(exception)是程序运行时发生的错误,会中断执行;用 `try/except` 可以捕获并处理异常。
用大白话说
异常(exception)是程序运行时出现的错误。比如除以零、访问不存在的列表下标、打开不存在的文件——这些情况 Python 没法继续跑,就会“抛出异常”,如果不处理,程序就崩溃退出。
try:
num = 10 / 0
except ZeroDivisionError:
print("不能除以零!")
try 里放可能出错的代码,except 里放出错后的处理。这样即使出错,程序也不会崩溃,而是优雅地处理。
常见异常类型:
ZeroDivisionError:除以零TypeError:类型不对("a" + 1)ValueError:值不合法(int("abc"))IndexError:列表下标越界KeyError:字典键不存在FileNotFoundError:文件找不到
可以用 except Exception as e 捕获所有异常,e 里是错误信息。还可以用 raise 主动抛出异常,finally 做收尾(不管出没出错都执行)。
示例
python
try:
num = int(input("输入一个数字: "))
result = 10 / num
except ZeroDivisionError:
print("不能除以零!")
except ValueError:
print("输入的不是有效数字!")
else:
print(f"结果是 {result}")
finally:
print("程序结束")try 里放可能出错的代码,不同 except 捕获不同异常类型。else 在没出错时执行,finally 不管出没出错都执行。
工作原理
- 把可能出错的代码放在
try块里 - 用
except 异常类型捕获并处理对应异常 - 没匹配到的异常会向上传播,没人处理就崩溃
finally块无论是否出错都会执行,常用于清理
常见混淆
容易混淆的对象: 错误
关键区别: 异常是运行时可以捕获处理的错误(如除零、文件不存在),语法错误是代码写错了编译阶段就发现、没法 try。异常能被 except 捕获,语法错误必须改代码。
相关术语
相关资源
相关课程
- Python 概览
用 try/except 处理异常
学习基础知识
通过结构化课程深入理解这个主题。
解读错误信息
用大白话解释常见错误——什么意思、为什么发生、如何修复。