如何在 Python 中使用“raise”关键字

新手上路,请多包涵

我已经阅读了“raise”的官方定义,但我仍然不太明白它的作用。

简单来说,什么是“加薪”?

示例用法会有所帮助。

原文由 Capurnicus 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.1k
2 个回答

它有两个目的。

jackcogdill 给出了第一个:

它用于引发您自己的错误。

>  if something:
>    raise Exception('My error!')
>
> ```

第二个是在异常处理程序中重新引发 _当前_ 异常,以便可以在调用堆栈中进一步处理它。

try: generate_exception() except SomeException as e: if not can_handle(e): raise handle_exception(e)

”`

原文由 Ignacio Vazquez-Abrams 发布,翻译遵循 CC BY-SA 4.0 许可协议

raise 没有任何参数是 python 语法的特殊用途。这意味着获取异常并重新引发它。如果这种用法可以称为 reraise

     raise

来自 Python 语言参考

如果不存在表达式,则 raise 重新引发在当前范围内处于活动状态的最后一个异常。

如果 raise 单独使用而没有任何参数,则严格用于 reraise -ing。如果在没有重新引发另一个异常的情况下完成,则会显示以下错误: RuntimeError: No active exception to reraise

原文由 Sohail Si 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题