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