【问题标题】:import sub-packages or module from directory of setup.py从 setup.py 目录导入子包或模块
【发布时间】:2019-11-21 18:03:15
【问题描述】:

我开始制作一个包(实际上是一个可执行文件)并制作了一个小程序,其中包含目录结构中的多个文件:

my_app_proj
  |-setup.py
  |-my_app
     |-my_app.py
     |-__init__.py
     |-lib
        |-libA.py
        |-libB.py

在文件my_prog.py 中,我有类似的内容:

from lib import libA
from lib import libB

但是当我想用setup.py 创建我的包时,导入指令不再可操作,因为它们不在 PYTHONPATH 中。 显然因为我在my_prog目录的父目录中。

一个解决方案是在文件__init__.py中添加my_prog的路径在python路径中,但我觉得它很糟糕。

有没有更优雅的解决方案?

【问题讨论】:

    标签: python python-3.x packaging setup.py


    【解决方案1】:

    您可以使用相对导入:

    from .lib import libA
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-23
      • 2015-12-22
      • 2017-08-30
      • 1970-01-01
      • 2019-11-10
      相关资源
      最近更新 更多