raise 主动抛异常
最后更新:2026-09-22
raise 主动抛异常
raise 主动抛出一个异常(可指定类型与消息,或重新抛出当前异常)。
| 分类 | 关键字与语句 |
|---|---|
| 类型 | 关键字与语句 |
| Python 版本 | all |
📝 语法
raise [ExceptionType [from other]]
raise
▶ 示例
编辑下方代码,点击运行,在输出面板查看结果:
运行结果:
caught: must be >= 0
🏷️ 相关关键字与语句
💡 相关案例
更多实战案例即将上线,敬请期待。
❓ 常见问题
Qraise 和 assert 有什么区别?
Araise 无条件抛异常,用于主动校验输入、报告业务错误;assert 只在条件为假时抛 AssertionError,而且用 python -O 运行会被整个禁用,不适合做正式校验。
Q在 except 块里直接写 raise 是什么意思?
A不带参数的 raise 会原样重新抛出当前正在处理的异常,并保留原始 traceback,常用于「记日志或做清理后,把异常继续往外抛」。
Qraise ValueError('msg') 和 raise ValueError 有什么区别?
A前者带一条错误消息,调用方用 str(e) 就能看到原因,调试更方便;后者没有消息。建议总是带上有意义的消息。