如何正确导入Python模块并避免导入错误

问题描述 投票:0回答:1

我有一个我正在研究的自定义python模块,我很困惑如何将模块导入其他模块。我想在其他模块中使用某些模块的碎片并继续收到错误:ImportError: cannot import name NameOfModule

我假设有某种循环引用导致问题,但我不确定是否需要向__init__.py添加内容,或者是否有特定方式将模块导入到彼此中,或者我是否应该更改我的文件夹结构体?

如果我想在mod1.py中使用mod2.py中的某些函数,我应该如何设置import语句?

我当前的文件夹结构是:

FolderName
  -__init__.py
  -mod1.py
  -mod2.py
  -mod3.py
  -mod4.py

示例代码:

  • __init__.py是空的
  • mod1.py:from . import mod2
  • mod2.py:from . import mod1
python python-2.7 python-import
1个回答
0
投票

您应该对当前模块中的文件使用相对导入,如下所示:

from . import mod2

要么:

from .mod2 import foo

除非你有充分的理由,否则你应该使用Python 3。

© www.soinside.com 2019 - 2024. All rights reserved.