相关疑难解决方法(0)

无争议地提高

没有参数的raise语句的文档

如果不存在表达式,则raise会重新引发当前作用域中处于活动状态的最后一个异常.

我曾经认为这意味着当前的函数必须执行一个except子句.在阅读了这个问题并进行了一些实验后,我认为这意味着堆栈上的任何函数都必须执行一个except子句,但我不确定.另外,我已经意识到我不知道堆栈跟踪如何与no-arg raise一起工作:

def f():
  try:
    raise Exception
  except:
    g()

def g():
  raise

f()
Run Code Online (Sandbox Code Playgroud)

产生

Traceback (most recent call last):
  File "foo", line 10, in <module>
    f()
  File "foo", line 5, in f
    g()
  File "foo", line 3, in f
    raise Exception
Exception
Run Code Online (Sandbox Code Playgroud)

这看起来不像初始加注时的堆栈,或者重新加注时的堆栈,或者两个堆栈的串联,或者我能理解的任何东西.

我是否正确寻找执行except子句的堆栈上的任何函数?此外,堆栈跟踪如何在重新加载时起作用?

python exception

21
推荐指数
2
解决办法
9002
查看次数

标签 统计

exception ×1

python ×1