从setup.py目录导入子包或模块

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

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目录的父目录中。

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

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

xuyongm 回答:从setup.py目录导入子包或模块

您可以使用相对导入:

from .lib import libA
本文链接:https://www.f2er.com/3055807.html

大家都在问