简体   繁体   English

尝试制作python 2模块时导入错误

[英]Import Error when trying to make python 2 modul

This doesn't seem to be an issue in python 3 but I'm needing to use python 2.7 for this and get the following issue这在 python 3 中似乎不是问题,但我需要为此使用 python 2.7 并得到以下问题

DIRECTORY STRUCTURE
module
├── __init__.py
└── submodule
    ├── __init__.py
    └── test.py 
# module/__init__.py
from module import submodule

# module/submodule/__init__.py
from module.submodule import test

# module/submodule/test.py
from module import submodule

when I try to import module from somewhere else it results in the following error:当我尝试从其他地方导入模块时,会导致以下错误:

>>> import module
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "module/__init__.py", line 1, in <module>
    from module import submodule
  File "module/submodule/__init__.py", line 1, in <module>
    from module.submodule import test
  File "module/submodule/test.py", line 1, in <module>
    from module import submodule
ImportError: cannot import name submodule

I'm assuming the issue has something to do with circular imports but i need to use submodule in both module/__init__.py and module/submodule/test.py我假设这个问题与循环导入有关,但我需要在 module/__init__.py 和 module/submodule/test.py 中使用 submodule

any help is appreciated任何帮助表示赞赏

As you've mentioned circular imports, one way to resolve this is by importing the module locally.正如您提到的循环导入,解决此问题的一种方法是在本地导入模块。

For eg例如

def fun():
    from module import submodule

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM