如何在函数崩溃后检索值?

2024-05-01 21:51:46 发布

您现在位置:Python中文网/ 问答频道 /正文

如何在函数崩溃后从中检索值?例如,我如何在函数完成/崩溃后找到a的值。你知道吗

>>> def a_is_3():
...     a=3
...     print 'a='+str(a)
... 
>>> a_is_3()
a=3
>>> a
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'a' is not defined

我的真实案例包括创建并通过几十个模块传递的大量numy数组。在代码出错后,数组仍在占用内存,但我无法访问它们。你知道吗

有没有办法检索函数崩溃时的变量?我希望避免添加调试代码并重新运行冗长的执行来捕获变量。这似乎是一个特别有用的故障排除技巧。你知道吗


Tags: 函数代码mostisdefstdinline数组
1条回答
网友
1楼 · 发布于 2024-05-01 21:51:46

尝试使用global

>>> def a_is_3():
...     global a
...     a = 3
...     print('a=' + str(a))
...
>>> a_is_3()
a=3
>>> a
3
>>>

这在交互式会话中会很好地工作,但是如果您稍后将其移动到脚本中,请确保您知道其含义。你知道吗

显然,变量a在全局范围内被重写,所以也要注意这一点。你知道吗

相关问题 更多 >