gpt4 book ai didi

Python:sys.exc_info() 缺少局部变量

转载 作者:太空宇宙 更新时间:2023-11-04 06:39:28 24 4
gpt4 key购买 nike

在 Python 中,我有捕获异常的代码,如下所示:

try:
<do stuff>
except:
exc_info = sys.exc_info()

我遇到的问题是回溯对象 (exc_info[2]) 不确定地缺少回溯对象中的局部变量。我确实知道这一点,因为我运行完全相同的代码,有时变量在 tb.tb_frame.f_locals 中,有时不在。 tb.tb_frame.f_globals 中的全局变量总是正确的。

什么填充了 f_locals 结构?什么可能导致局部变量字典有时为空?

最佳答案

locals 中的内容完全取决于该本地上下文中的代码。例如:

if condition:
foo='foo'
else:
bar='bar'

如果 condition==True 那么 foo 将在 locals()bar 不会,否则bar 将在 locals() 中,而 foo 不会。

关于Python:sys.exc_info() 缺少局部变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3001750/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com