我有一个我正在研究的自定义python模块,我很困惑如何将模块导入其他模块。我想在其他模块中使用某些模块的碎片并继续收到错误:ImportError: cannot import name NameOfModule
我假设有某种循环引用导致了这个问题,但我不确定是否需要向__init__.py
添加内容,或者是否有哪种方法可以将模块相互导入,或者我应该更改文件夹结构?
如果我希望能够在mod1.py
中使用mod2.py
中的某些功能,我应该如何设置导入语句?
我当前的文件夹结构是:
FolderName
-__init__.py
-mod1.py
-mod2.py
-mod3.py
-mod4.py
示例代码:
__init__.py
为空
mod1.py: from . import mod2
mod2.py: from . import mod1
答案 0 :(得分:0)
您应该对当前模块中的文件使用相对导入,如下所示:
from . import mod2
或者:
from .mod2 import foo
除非你有充分的理由,否则你应该使用Python 3。