Pyenv - Как использовать существующий интерпретатор в качестве venv

Мое глобальное значение по умолчанию — 2.x, я не хочу его менять из-за возможного внутреннего использования другими приложениями, о которых я могу не знать.

Я могу установить новые версии, используя pyenv install, но я хотел бы, чтобы venv указывал на существующую установку 3.4 anaconda. По сути, поведение, которое я хочу подражать, заключается в том, что версия pyenv, указанная как system, вызывает python3.4 вместо python. Очевидно, я мог бы изменить системный путь Python по умолчанию, чтобы добиться этого, но я бы предпочел сделать это из pyenv.

Причина в том, чтобы заставить pyenv и возвышенное играть хорошо, потому что, насколько я могу судить, вы должны явно указать путь интерпретатора для возвышенного, который не может использовать преимущества динамического выбора интерпретатора, который вы получаете с помощью pyenv (например, возвышенное не будет уважать глобальная версия установлена ​​в pyenv).


person Solaxun    schedule 19.01.2016    source источник


Ответы (1)


Версия интерпретатора Python, которая появляется первой в вашем $PATH при инициализации pyenv, считается «системной». Таким образом, вы можете переопределить свой $PATH, чтобы поставить Python Anaconda на первое место перед eval "$(pyenv init -)”.

Но это очень неуклюжий способ заставить Пиенва и Анаконду жить вместе. Гораздо лучше заставить pyenv установить Anaconda (или Miniconda). Последние версии pyenv и плагин pyenv-virtualenv делают эту работу довольно плавной.

Что касается Sublime, если ему нужен явный путь к интерпретатору, просто указать его? Я не совсем понимаю, какое отношение к этому имеет pyenv...?

person wjv    schedule 03.02.2016