在复杂的目录结构中导入父模块?

时间:2017-09-27 13:29:22

标签: python python-2.7

如何将util.py文件链接到script.py文件?

App
  Module
    __init__.py
    util.py
  Main
    __init__.py
    Dir1
      script.py
      __init__.py
    Dir2
      script.py
      __init__.py

获取我的应用程序的这个目录布局。由于需求原因,在每个脚本之间共享相同模块时,可以轻松地分离脚本,这有点复杂。但是,由于目录层次结构,很难找到将该模块导入每个脚本的正确方法。

环境

Python 2.7,Windows 10,64Bit

2 个答案:

答案 0 :(得分:0)

只需将根目录添加到PYTHONPATH即可。然后你可以使用绝对导入以及相对导入。

# script.py
form Module.util import _

答案 1 :(得分:0)

你可以把:

import sys
sys.path.insert(1, '.')

在您的Module.__init__.py中,然后只需将其导入script.py

from Modules import util

此外,您可以在__all__ = []中定义__init__变量,然后进行星标导入。