Как активировать среду Anaconda


146

Я на Windows 8, использую Anaconda 1.7.5 64bit.

Я создал новую среду Anaconda с

conda create -p ./test python=2.7 pip

от C:\Pr\TEMP\venv\.

Это сработало хорошо (есть папка с новым дистрибутивом Python). Конда говорит мне, чтобы напечатать

activate C:\PR\TEMP\venv\test

для активации среды, однако это возвращает:

No environment named "C:\PR\temp\venv\test" exists in C:\PR\Anaconda\envs

Как я могу активировать среду? Что я делаю не так?


1
Наткнулся на это сегодня. Очень похоже на ошибку, зарегистрированную как conda-env # 59
remram

Ответы:


160

Если это произойдет, вам нужно будет установить PATH для вашей среды (чтобы он получал правильный Python из среды и Scripts \ в Windows).

Представьте, что вы создали среду с именем py33, используя:

conda create -n py33 python=3.3 anaconda

Здесь папки создаются по умолчанию в Anaconda \ envs, поэтому вам нужно установить PATH как:

set PATH=C:\Anaconda\envs\py33\Scripts;C:\Anaconda\envs\py33;%PATH%

Теперь это должно работать в командном окне:

activate py33

Строка выше - это Windows, эквивалентный коду, который обычно появляется в руководствах для Mac и Linux:

$ source activate py33

Дополнительная информация: https://groups.google.com/a/continuum.io/forum/#!topic/anaconda/8T8i11gO39U.

Создает ли anaconda отдельную переменную PYTHONPATH для каждой новой среды?


6
Я не понимаю, в чем смысл, activateесли он не устанавливает переменную пути для меня.
Асад Саидуддин

7
Это ошибка. Я отправил исправление , надеюсь, следующая версия работает правильно.
Ремрам

3
в Windows используйте activateкоманду в cmdтерминале командной строки
phillipsK

1
export PATH="/$HOME/anaconda/bin:$PATH"будет работать для пользователей MAC OS X Это то, что я сделал, чтобы заставить моих virtualenvs работать.
Умный Программист

4
Я использовал powershell и вышеописанный метод не работает. На cmd однако работает нормально.
Кон Псих

57

Используйте cmd вместо Powershell! Я потратил 2 часа, прежде чем я переключился на CMD, а затем он работал!

создать среду:

conda create -n your_environment_name

см. список сред conda:

conda env list

активировать вашу среду:

conda activate your_environment_name

Это все люди


13

Обратите внимание, что команда для активации среды изменилась в версии Conda 4.4. Рекомендуемый способ активации среды теперь conda activate myenvвместо source activate myenv. Чтобы включить новый синтаксис, вы должны изменить свой .bashrcфайл. Строка, которая в настоящее время читает что-то вроде

export PATH="<path_to_your_conda_install>/bin:$PATH"

Должен быть изменен на

. <path_to_your_conda_install>/etc/profile.d/conda.sh

Это только добавляет condaкоманду к пути, но еще не активирует baseсреду (которая ранее вызывалась root). Для этого также добавьте еще одну строку

conda activate base

после первой команды. См. Все подробности в блоге Анаконды за декабрь 2017 года. (Я думаю, что на этой странице в настоящее время отсутствует новая строка между двумя строками .../conda.shconda activate base).

(Этот ответ действителен для Linux, но может быть актуален и для Windows и Mac)


8

Все прежние ответы кажутся устаревшими.

conda activateбыл введен в conda4.4 и 4.6.

conda activate: Логика и механизмы, лежащие в основе активации среды, были переработаны. С conda 4.4 conda activateи conda deactivateсейчас являются предпочтительными командами для активации и деактивации окружения. Вы обнаружите , что они гораздо более быстрые , чем source activateи source deactivateкоманда из предыдущих версий Конды. Эта conda activateкоманда также имеет преимущества: (1) универсальность для всех операционных систем , оболочек и платформ и (2) отсутствие коллизий путей со сценариями из других пакетов, таких как сценарий активации python virtualenv.

Примеры

conda create -n venv-name python=3.6
conda activate -n venv-name
conda deactivate

Эти новые подкоманды доступны в «Aanconda Prompt» и «Anaconda Powershell Prompt» автоматически. Чтобы использовать conda activateв каждой оболочке (обычной cmd.exeи powershell), проверьте команду expose condaв каждой оболочке Windows .

Ссылки


Вам не нужно -nактивировать. Просто conda activate baseдостаточно хорошо.
Шиталь Шах

7

Как видно из сообщения об ошибке, указанные вами пути неверны. Попробуйте это так:

activate ..\..\temp\venv\test

Однако, когда мне нужно было установить Anaconda, я скачал его отсюда и установил его в paths по умолчанию ( C:\Anaconda), затем поместил этот путь в переменные среды, поэтому теперь по умолчанию используется интерпретатор Anacondas. Например, если вы используете PyCharm, вы можете указать там интерпретатора напрямую.


Я указываю путь, где установлена ​​среда анаконды. Я скопировал "активировать ..." прямо из conda createвывода и попытался запустить его C:/как из, так и из C:/pr/temp/venv. Тем не менее, это не работает ...
Пандита

4

Вот как это работает для меня

  1. C: \ Windows \ system32> set CONDA_ENVS_PATH = d: \ your \ location
  2. C: \ Windows \ system32> информация о conda

Показывает новый путь к среде

  1. C: \ Windows \ system32> conda create -n YourNewEnvironment --clone = root

Клонирует корневую среду по умолчанию

  1. C: \ Windows \ system32> активировать вашу новую среду

Деактивация среды "d: \ YourDefaultAnaconda3" ... Активация среды "d: \ your \ location \ YourNewEnvironment" ...

  1. [YourNewEnvironment] C: \ Windows \ system32> conda info -e

Конда среда: #

YourNewEnvironment
* d: \ your \ location \ YourNewEnvironment

root d: \ YourDefaultAnaconda3


4

Я пытался активировать env из задания Jenkins (в bash) с помощью, conda activate base и это не помогло, поэтому после многих попыток это сработало для меня (CentOS 7):

source /opt/anaconda2/bin/activate base

2

давайте предположим, что ваша среда называется 'demo', и вы используете anaconda и хотите создать виртуальную среду:

(если вы хотите Python3)

    conda create -n demo python=3

(если вы хотите Python2)

    conda create -n demo python=2

После выполнения вышеуказанной команды вы должны активировать среду с помощью следующей команды:

    source activate demo 

1

Для меня ключом является использование Anaconda Prompt вместо cmd или PowerShell.

В Anaconda Prompt все, что мне нужно сделать, это activate XXX


1

так же, как @Simba правильно ответил, многое изменилось в conda env с 4.6. Conda activate (env-name)свергли source activate (env-name)насовсем, но не без собственных проблем. conda activateчасто вынуждайте ваше окружение основываться и заставлять вас видеть что-то подобное (основание). Поэтому выкидывает кучу ошибок обратно на вас. Это также может быть связано с тем, что auto_activate_baseустановлено значение True.

Вы можете проверить это с помощью следующей команды

conda config --set auto_activate_base False

source ~/.bashrc,

И чтобы реактивировать использовать это

conda config --set auto_activate_base True

source ~/.bashrc


0

У меня было то же самое, кажется, исправление было сделано в источнике .


2
Привет @ Нельсон, заметьте, что указанная вами ссылка сейчас не работает. может быть, вместо этого поместите инструкции, которые содержались в этой ссылке в вашем ответе?
Цилидзи Мудау

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.