Пакет - это каталог с __init__.py
в нем.Отличие от каталога заключается в том, что вы можете импортировать его.
Сам по себе «пути Python» не существует, но вы обнаружите, что было бы неплохо поместить все ваши модули в один пакет симя, связанное с проектом.
Кроме того, чтобы следовать руководству по стилю Python, PEP8, имена пакетов и модулей должны быть строчными.Итак, если мы предположим, что проект называется «Статистика по бондам», ваша структура будет выглядеть примерно так:
botondstats/
indicators/
moving_averages.py
stochastics.py
strategies/
moving_averages_cross.py
example.py
Затем вы найдете класс Stochastics, выполнив
from botondstats.indicators.stochastics.Stochastics
(тамСуществуют различные способы сохранить структуру, но сделать импорт короче, но это другой вопрос).
Вы можете поместить эту структуру в src/
, если хотите, но это не обязательно.Я никогда не делаю.Вместо этого у меня есть главный каталог:
BotondStatistics/
docs/
botonstats/ # the above structure
setup.py # Distutils/distribute configuration for packaging.
В этом каталоге у меня также обычно есть virtualenv, поэтому у меня фактически есть bin / lib / et al.Разработка обычно выполняется с помощью
./bin/python setup.py tests
Поскольку я использую средство запуска Distrubute для запуска тестов.
Вот как я это делаю.: -)