gpt4 book ai didi

Python导入问题

转载 作者:太空宇宙 更新时间:2023-11-03 12:51:07 25 4
gpt4 key购买 nike

我有一些问题,在我理解 python 如何导入模块时看起来像一些空格。例如,我有一个名为 somemodule 的模块,其中包含两个子模块 a.pyb.py


a.py 的内容:

from somemodule.b import b

def a():
b()
print "I'am A"

内容b.py

from somemodule.a import a

def b():
a()
print "I'am B"


现在,如果我想调用任何模块,我会得到 ImportError:

ImportError: cannot import name b

我怎么了?

最佳答案

你有一个循环引用。您导入模块 a,然后导入模块 b。但是模块 b 从模块 a 导入函数 a。但在它尝试这样做时,a 尚未定义。请记住,Python 导入有效地执行了模块。

解决方案似乎是移动函数定义,使它们出现在导入之前。

或者,正如@lazyr 建议的那样,将导入语句移动到函数内部,以便在函数被调用时导入,而不是在模块导入时。

关于Python导入问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7205507/

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