Программно работающие программы Python в виртуальных средах (conda или venv) - PullRequest
0 голосов
/ 26 апреля 2018

Я планирую реализовать некоторые функции в Python, которые будут использоваться как часть более крупного не-Python проекта, чтобы использовать преимущества некоторых библиотек Python.Я уже делал некоторые сценарии на Python, но ничего такого существенного.

Из полученных советов кажется, что мы определенно захотим использовать виртуальную среду для управления зависимостями.Я изучаю venv и conda и еще не придерживался ни одного из них, хотя кажется, что у conda есть преимущество в том, чтобы предоставить предварительно созданные версии зависимостей Cython.Я обнаружил, что, похоже, ориентирован на интерактивную работу внутри среды.Для наших целей я хочу иметь возможность запускать программы, которые мы написали на Python программно, без прохождения через системную оболочку.

Есть ли установленный, рекомендуемый способ сделать это?

Я пытался посмотреть, что на самом деле делают сценарии Bash для активации виртуальной среды, и похоже, что они просто устанавливают некоторые переменные среды.Оба добавляют каталог bin их виртуальной среды в начало PATH, venv устанавливает VIRTUAL_ENV, а conda устанавливает набор CONDA_ переменных среды.Интересно, что это не похоже ни на наборы, скажем, PYTHONPATH.

Для программного использования, достаточно ли установить эти переменные среды и затем запустить эквивалент python3 -m mymodule, или есть дополнительные настройкичто нужно сделать?Мне бы особенно хотелось узнать, задокументировано ли это где-нибудь, для conda, venv или для обоих: полагаться на то, что выяснили, какие переменные среды должны быть установлены, а какие значения кажутся немного хрупкими.

...