【问题标题】:Import Error when trying to make python 2 modul尝试制作 python 2 模块时出现导入错误
【发布时间】:2021-12-06 14:37:55
【问题描述】:

这在 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

当我尝试从其他地方导入模块时,会导致以下错误:

>>> 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

我假设这个问题与循环导入有关,但我需要在 module/__init__.py 和 module/submodule/test.py 中使用子模块

感谢任何帮助

【问题讨论】:

    标签: python python-2.7 python-module python-packaging


    【解决方案1】:

    正如您提到的循环导入,解决此问题的一种方法是在本地导入模块。

    例如

    def fun():
        from module import submodule
    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-26
      • 2012-08-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多