Совместное использование пакета python между деревьями - PullRequest
0 голосов
/ 03 августа 2020

Я считаю, что это «не рекомендуется», но на практике этого трудно избежать. У нас есть большая коллекция Python скриптов, вкрапленных в кодовую базу, отличную от Python. Оказывается, эти Python скрипты иногда хотят делать то же самое, что и другие Python скрипты. В итоге мы дублируем много кода.

Было бы неплохо извлечь все это в общий пакет и импортировать его, но, поскольку они не входят в общее дерево, это не чисто. Конечно, есть много способов справиться с этим:

  • Я мог бы реструктурировать все свои скрипты, чтобы они были частью единого дерева
  • Я мог бы добавить свой пакет в пакеты сайтов
  • Я мог бы изменить sys.path в начале каждого скрипта.
  • Возможно, другие вещи, о которых я не думал.

Все это в некотором роде далеко не идеально или другое хотя. Пока что №3 кажется лучшим из всех. Мне не нравится 1, потому что в контексте кодовой базы, отличной от Python, сценарии уже имеют наибольший смысл там, где они находятся сегодня, и я не хочу их перемещать. Мне не нравится 2, потому что это требует от пользователя выполнения шага настройки вручную, и в идеале все должно «просто работать».

Как другие люди справляются с этим на практике?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...