Python无法找到本地模块

时间:2016-07-01 00:08:10

标签: python importerror

我有一个像这样的文件夹结构:

setup.py
core/
    __init__.py
    interpreter.py
tests/
    __init__.py
    test_ingest.py

如果我尝试在core中导入test_ingest.py并运行它,我会ImportErrorcore模块无法找到。但是,我可以在core中导入setup.py而不会出现问题。我的IDE并不吓坏,为什么会出现这个错误呢?

1 个答案:

答案 0 :(得分:5)

当你import你的包时,Python搜索sys.path上的目录,直到找到其中一个:一个名为" core.py"的文件,或一个名为&#的目录34;核心"包含一个名为__init__.py的文件。 Python然后imports package

您可以import core成功setup.py,因为core目录的路径位于sys.path。您可以通过从文件中运行此代码段来自行查看:

import sys

for line in sys.path:
     print line

如果要从文件夹结构中的其他文件导入core,可以将路径附加到文件中找到core sys.path的目录:

import sys
sys.path.append("/path/to/your/module")