1

我有两个 python 项目,一个包含用于文件操作等的有用包。它们很有用,因为它们可以在任何其他类型的项目中重复使用。第二个是这些项目之一,需要使用我有用的包。这是我的项目的文件结构:

Python-projects/
  Useful/
    package_parsing/
    package_file_manipulation/
    package_blabla/
  Super-Application/
    pkg1/
      __init__.py
      module1.py
      module2.py
    pkg2/
    setup.py
    MANIFEST.in
    README.rst

首先,我想Useful/package_parsing在我的模块中使用包 Super-Application/pkg1/module1.py。除了在 Super-Application 项目中复制 package_parsing 之外,还有更方便的方法吗?

根据第一个答案,如果有办法从不同的项目链接模块,我怎么能在我的超级应用项目的发布包中包含这样的外部模块?我不确定install_requiressetup.py意志中使用。

我的主要想法是不要Useful/package_parsing在我所有的其他开发项目中复制该包,尤其是当我想对这个有用的包进行修改时。我不想更新每个项目中所有过时的副本。

==============

编辑 1

我的问题的第一部分似乎需要处理附加路径:

import sys
sys.path.insert(0, path/to/Useful/package_parsing)

此外,我可以使用以下方法简单地检查可用路径:

for p in sys.path:
    print p

现在对于第二部分,我如何在发布包中包含这样的外部模块,可能使用setup.py安装文件?

4

0 回答 0