Я работал над проектом a
, который я хотел, чтобы пользователи устанавливали через pip install a
со следующим списком файлов:
.
├── setup.py
├── MANIFEST.in
└── a
├── __init__.py
├── a.py
└── b
├── __init__.py
└── b.py
setup.py
from setuptools import setup
setup (
name='a',
version='0.0.1',
packages=['a'],
package_data={
'a': ['b/*'],
},
)
MANIFEST.in
recursive-include b *.*
а / INIT .py
from __future__ import absolute_import
from a.a import cats
import a.b
а / a.py
cats = 0
A / B / * 1021 INIT * .py
from __future__ import absolute_import
from a.b.b import dogs
а / б / b.py
dogs = 1
Я установил модуль, запустив в каталоге следующее с MANIFEST.in
:
python setup.py install
Затем из совершенно другого места в моей файловой системе /moustache/armwrestle
я смог запустить:
import a
dir(a)
Что подтвердило, что a.cats
действительно равнялось 0, а a.b.dogs
действительно равнялось 1, как и предполагалось.