Найти - Пользователи
Полная версия: Как использовать модуль из другого пакета?
Начало » Python для новичков » Как использовать модуль из другого пакета?
1
victor_kr
Хочу создать структуру программы такого вида:

myproject/
models/
mymodel.py
search/
search_tool.py

И при этом хочу использовать mymodel.py в search_tool.py. Подскажите пожалуйста как это сделать? Стоит ли это вообще делать? Какие стандартные подходы? Спасибо.
doza_and
Задавал похожий вопрос на этом форуме. Долгое обсуждение для себя просуммировал так:
В структуре проекта - связи допускаются в одном направлении сверху вниз. (в текущей папке допустимы горизонтальные связи). Если есть общие части - то их выделяют, делают из них библиотеки и инсталлируют в питон вцелом. Если глобальное инсталирование нежелательно - используют pip для создания виртуальной среды исполнения.

Если это не нравится, то можно устанавливать python path перед импротом - это не очень сложно. (http://docs.python.org/tutorial/modules.html раздел 6.1.2)
Или пользоваться относительным импортом. (6.4.2. Intra-package References) - Это посложнее.

Итог:
Для себя я так и не понял как выделить общие части, для использования в разных модулях данного приложения, хотя это конечно нужно. Сам добавляю их в глобалные библиотеки.
PooH
я всегда устанавливаю пакет при разработке
python setup.py develop
и пользую пути относительно пакета
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB