gpt4 book ai didi

python - 为 Python 包添加虚拟命名空间

转载 作者:行者123 更新时间:2023-11-28 18:57:59 24 4
gpt4 key购买 nike

我有一个具有以下目录结构的 python 包:

my_package/
my_subpackage/
__init__.py
my_module.py
__init__.py
setup.py

当我生成 Python wheel 并 pip 安装它时,我不会拥有 my_package 命名空间,因此 my_subpackage 将成为全局命名空间的一部分我的 virtualenv 或其他什么。

我知道这里的解决方案是创建另一个名为 my_package 的目录并将所有内容放入其中:

my_package/
my_package/
my_subpackage/
__init__.py
my_module.py
__init__.py
setup.py

但是假设我出于某种原因无法更改目录结构。有没有办法在第一个布局的 setup.py 中添加虚拟 my_package 命名空间?

最佳答案

您可以指定 package_dir setup.py 中的选项。

像这样的东西应该可以工作:

setup(
...
package_dir={'': '..'},
packages=['my_package']
...
)

不过,我从未在 package_dir 中使用过相对路径,因此非常感谢您的确认。

关于python - 为 Python 包添加虚拟命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55922891/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com