Я думаю, как организовать развернутое приложение Python, которое будет иметь
- Исполняемый скрипт, расположенный в / usr / bin /, который предоставит CLI для функциональности, реализованной в
- Библиотека, установленная там, где находится текущий каталог site-packages.
Сейчас у меня в источниках следующая структура каталогов:
foo.py
foo/
__init__.py
...
что, я думаю, не самый лучший способ сделать что-то. Во время разработки все работает как положено, однако при развертывании код «from foo import FooObject» в foo.py, по-видимому, пытается импортировать сам foo.py, а это не то поведение, которое я ищу.
Итак, вопрос в том, какова стандартная практика организации подобных ситуаций? Одна из вещей, о которых я мог подумать, это при установке переименовать foo.py в просто foo, что мешает ему импортировать себя, но это выглядит довольно неловко ...
Другая часть проблемы, я полагаю, заключается в том, что это проблема с именами. Возможно, вызовите исполняемый скрипт foo-bin.py?