Setup.py 以不同的名称导出

use*_*833 5 python setuptools

我有一种情况需要将所有脚本放在基本目录的子文件夹中

当前结构

如果我有以下文档结构

superhero

    setup.py
    scripts.py

    heros
        superman.py
        batman.py

    modules
        __init__.py

        fly
            fly.py
        spy
            spy.py
Run Code Online (Sandbox Code Playgroud)

我想以 superhero 名称导出模块目录,在 setup.py 脚本中,我尝试执行以下操作:

setup(
    ...

    packages=["superhero"],
    package_dir={
        'superhero': 'modules'
    },

    ...)
Run Code Online (Sandbox Code Playgroud)

然后运行

pip install --editable .
Run Code Online (Sandbox Code Playgroud)

在那个目录中。我没有将模块安装在名称 superhero 下,而是将其安装在名称模块下。所以在蟒蛇

> import superhero
ERROR:

> import modules
> 
Run Code Online (Sandbox Code Playgroud)

我将如何重组我的setup.py文件,以便我可以运行 import superhero以导入名为 的包下的所有模块 superhero?我无法从文档中弄清楚这一点。