gpt4 book ai didi

python - 为什么模块在本地导入时有时会引发 UnboundLocalError?

转载 作者:太空宇宙 更新时间:2023-11-04 02:34:04 26 4
gpt4 key购买 nike

<分区>

我被 python 解释器提示局部变量 foo 在赋值之前被引用的情况难住了,即使我已经清楚地导入了 foo 包并且从未重新-分配给它。

考虑以下代码:

import foo.bar
def qux():
if(foo.bar.fred()):
import foo.baz
print(foo.baz.waldo())
qux()

这会在 if(foo.bar.fred()): 行引发 UnboundLocalError。

这个问题似乎有不同于大多数 UnboundLocalError 情况的特定注意事项,我无法在堆栈溢出或任何其他网站上找到这个特定情况。

为什么上面的代码会抛出异常?

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