TL;DR:将包嵌套在另一个同名的包中。
我将超级包myPackage嵌套在一个目录(同名)中,如下所示:myPackage
├── myPackage
│ ├── __init__.py
│ ├── mySubPackage1
│ │ ├── foo1.py
│ │ ├── foo2.py
│ │ └── __init__.py
│ └── mySubPackage2
│ ├── bar1.py
│ ├── bar2.py
│ └── __init__.py
└── setup.py
然后,我更新了setup.py:from distutils.core import setup
if __name__ == "__main__":
setup(
name='myPackage',
package_dir = {
'myPackage': 'myPackage',
'myPackage.mySubPackage1': 'myPackage/mySubPackage1',
'myPackage.mySubPackage2': 'myPackage/mySubPackage2'},
packages=['myPackage', 'myPackage.mySubPackage1',
'myPackage.mySubPackage2']
)