Conda не работает?

 gonzo  ~/a/packages  conda env list
# conda environments:
#
ppo_latest               /nohome/jaan/abhishek/anaconda3/envs/ppo_latest
root                  *  /nohome/jaan/abhishek/anaconda3

 gonzo  ~/a/packages  conda activate ppo_latest
 gonzo  ~/a/packages  which python                                                                                     (ppo_latest)
/nohome/jaan/abhishek/anaconda3/bin/python
 gonzo  ~/a/packages  conda deactivate                                                                                 (ppo_latest)
 gonzo  ~/a/packages  which python
/nohome/jaan/abhishek/anaconda3/bin/python

Окружающая среда активируется без ошибок. Затем мы проверяем, на каком питоне он ссылается. Почему это не меняется?

Ответ 1

Начиная с conda 4.4, команда

conda activate <envname>

одинакова на всех платформах. Процедура добавления conda в PATH среды PATH для платформ, отличных от Windows (в Windows вы должны использовать Anaconda Prompt), а также изменение процедуры активации среды подробно описано в примечаниях к выпуску для conda 4.4.0.


Для версий conda старше 4.4 команда либо

source activate <envname>

на Linux и macOS или

activate <envname>

в Windows. Вам нужно удалить conda.

Ответ 2

Чтобы использовать "conda activate" через Windows CMD, а не Anaconda Prompt:
(в ответ на вопрос okorng, хотя использование Anaconda Prompt является предпочтительным вариантом)

Во-первых, нам нужно добавить скрипт activate.bat на ваш путь:
Через CMD:

set PATH=%PATH%;<your_path_to_anaconda_installation>\Scripts

Или через Панель управления откройте "Учетные записи пользователей" и выберите "Изменить переменные среды".

Затем вызов непосредственно из Windows CMD:

activate <environment_name>

без использования префикса "конда".

(Протестировано на Windows 7 Enterprise с помощью Anaconda3-5.2.0)

Ответ 3

Я только что создал новую среду с Conda, и все по-другому. Мой sys.path ненадолго был неверным, пока я не разобрался.

В результате я хочу указать для всех, кого смущает изменение в conda, что если вы обновили conda и создали среду, она теперь скажет вам (в отличие от предыдущего поведения):

# To activate this environment, use
#
#     $ conda activate test
#
# To deactivate an active environment, use
#
#     $ conda deactivate

Таким образом, новый способ активировать/деактивировать среду - сделать это, как описано выше.

Действительно, если вы обновляете более старую версию conda и пытаетесь выполнить описанное выше, вы можете увидеть следующее полезное сообщение (что я и сделал):

CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
If your shell is Bash or a Bourne variant, enable conda for the current user with

    $ echo ". ~/anaconda/etc/profile.d/conda.sh" >> ~/.bash_profile

or, for all users, enable conda with

    $ sudo ln -s ~/anaconda/etc/profile.d/conda.sh /etc/profile.d/conda.sh

The options above will permanently enable the 'conda' command, but they do NOT
put conda base (root) environment on PATH.  To do so, run

    $ conda activate

in your terminal, or to put the base environment on PATH permanently, run

    $ echo "conda activate" >> ~/.bash_profile

Previous to conda 4.4, the recommended way to activate conda was to modify PATH in
your ~/.bash_profile file.  You should manually remove the line that looks like

    export PATH="~/anaconda/bin:$PATH"

^^^ The above line should NO LONGER be in your ~/.bash_profile file! ^^^

Изменение вышеуказанного исправило мои проблемы с sys.path в активированных средах conda.

Ответ 4

Попробуй это:

export PATH=/home/your_username/anaconda3/bin:$PATH
in ~/.bashrc

Затем source ~/.bashrc Это работает для меня для той же проблемы.

Ответ 5

В среде Windows используйте "командную строку анаконды" вместо "командной строки".

Ответ 7

Это решение для тех пользователей, которые не хотят устанавливать PATH.

Иногда установка PATH может быть нежелательна. В моем случае у меня была установлена Anaconda и другое программное обеспечение с установкой Python для доступа к API, а настройка PATH создавала конфликты, которые было трудно разрешить.

В каталоге Anaconda (в данном случае Anaconda3) есть подкаталог под названием envs, в котором хранятся все среды. При использовании conda activate some-environment замените some-environment фактическим местоположением каталога среды.

В моем случае команда выглядит следующим образом.

conda activate C:\ProgramData\Anaconda3\envs\some-environment