我正在尝试在 python 中设置一个带有子包的包。这是我目前拥有的树结构:
myPackage
├── __init__.py
├── mySubPackage1
│ ├── foo2.py
│ ├── foo.py
│ └── __init__.py
├── mySubPackage2
│ ├── bar2.py
│ ├── bar.py
│ └── __init__.py
└── setup.py
都是__init__.py
空的。这是我的setup.py
:
from distutils.core import setup
if __name__ == "__main__":
setup(
name='myPackage',
package_dir = {
'mySubPackage1': 'mySubPackage1',
'mySubPackage2': 'mySubPackage2'},
packages=['mySubPackage1', 'mySubPackage2'],
)
问题是,当我从 运行python setup.py install
时myPackage
,子包被安装到dist-packages
:
/usr/local/lib/python2.7/dist-packages/mySubPackage1
/usr/local/lib/python2.7/dist-packages/mySubPackage2
我想问题是我的setup.py
,但我不知道如何解决它?它应该在 的父目录中myPackage
吗?如果是这样,那么当我将包打包到zip
using时它是如何工作的python setup.py sdist
?