raise关键字
在 Python 中,raise 是一个关键字,用于 手动抛出异常。它的作用是中断当前代码的执行,并将控制权交给最近的异常处理器(即 try...except 块),如果没有被捕获,程序将终止并打印错误信息。
✅ 基本语法
raise ExceptionType("错误信息")
🔍 常见用法
1. 抛出内置异常
raise ValueError("无效的参数")
2. 抛出自定义异常
你可以继承 Exception 类来创建自己的异常:
class MyCustomError(Exception):
pass
raise MyCustomError("这是一个自定义错误")
3. 重新抛出当前异常(在 except 块中)
try:
1 / 0
except ZeroDivisionError:
print("捕获到除零错误,继续抛出")
raise # 重新抛出当前异常
⚠️ 注意事项
- 一旦
raise被执行,后续代码不会继续执行。 - 可以不带参数使用
raise,但只能在except块中,用于重新抛出当前异常。 - 不建议用
raise来控制流程,应该只用于真正的错误情况。
✅ 示例:检查输入是否为正整数
def check_positive(n):
if not isinstance(n, int):
raise TypeError("输入必须是整数")
if n <= 0:
raise ValueError("输入必须是正整数")
print(f"{n} 是一个正整数")
check_positive(-5)
输出:
ValueError: 输入必须是正整数
如果你有具体的使用场景或代码片段,我可以帮你分析哪里该用 raise,或者如何优雅地处理异常。

浙公网安备 33010602011771号