答案 0 :(得分:1)
答案 1 :(得分:0)
您要尝试做的是创建一个名称空间包。您可以使用setuptools完成此操作。
请参见https://packaging.python.org/guides/packaging-namespace-packages/#pkgutil-style-namespace-packages
设置目录结构如下:
coname-utils/
setup.py
coname/
utils/
__init__.py
...
...
coname-qa/
setup.py
coname/
qa/
__init__.py
...
...
coname-api/
setup.py
coname/
api/
__init__.py
...
...
有一些变体,具体取决于您打算使用哪种工具进行部署。您可以查看上面的链接以获取有关此信息的详细信息。
此目录结构隔离了您希望可单独安装的名称空间部分。您还可以分别对不同的子软件包进行版本控制,这对于维护非常有用。大概您的某些子包之间可能存在依赖关系。您可以将代码添加到依赖于另一个子包中的api成员的一个子包中,该子包仅存在于该子包的某些版本中。在setup.py文件中,您可以定义所需版本的依赖项。
有关如何编写setup.py的详细信息,请参见setuptools documentation
设置完成后,您应该可以使用setuptools构建项目,并且可以分别安装utils,qa,api等。在环境中安装后,可以使用“ import coname.utils”导入它们。 ,“导入coname.qa”等。