模块导入错误(Windows)

时间:2016-04-22 18:46:54

标签: python python-3.x python-3.5

我重构了一些代码并将其放在单独的目录中,突然间,解释器无法找到我的任何自定义模块。

我的包结构如下所示:

etl3
    __init__.py
    inst_config
        __init__.py
        config3.py
    inst_utils
        __init__.py
        etc...
    jira
        filetorun.py
    etc...

我试图在jira目录中运行该文件。当它位于etl3\目录下时,它可以找到它,因为它们位于同一目录中。然而,一旦嵌套,它就找不到它们。

我运行python解释器,并打印我的sys.path。我可以在那里看到C:\etl3\inst_config\的路径,这就是为什么我在jira目录中无法找到它的原因感到困惑的原因。

2 个答案:

答案 0 :(得分:2)

inst_config文件夹位于路径上时,您只需直接从中导入文件:

import config3

但是当您的PATH上有C:\etl3\时,您可以导入那里定义的模块,在这种情况下,它将是包inst_config及其子模块:

import inst_config.config3
# or
from inst_config import config3

答案 1 :(得分:0)

from etl3.inst_config import YourClassHere

(推荐)或

import etl3.inst_config.config3

https://docs.python.org/2/tutorial/modules.html#packages