Comment activer un environnement Anaconda


145

Je suis sous Windows 8, en utilisant Anaconda 1.7.5 64 bits.

J'ai créé un nouvel environnement Anaconda avec

conda create -p ./test python=2.7 pip

de C:\Pr\TEMP\venv\.

Cela a bien fonctionné (il y a un dossier avec une nouvelle distribution python). conda me dit de taper

activate C:\PR\TEMP\venv\test

pour activer l'environnement, mais cela renvoie:

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

Comment puis-je activer l'environnement? Qu'est-ce que je fais mal?


1
Ran dans ça aujourd'hui. Ressemble beaucoup à un bug, signalé comme conda-env # 59
remram

Réponses:


160

Si cela se produit, vous devrez définir le PATH pour votre environnement (afin qu'il obtienne le bon Python à partir de l'environnement et des scripts \ sous Windows).

Imaginez que vous avez créé un environnement appelé py33 en utilisant:

conda create -n py33 python=3.3 anaconda

Ici, les dossiers sont créés par défaut dans Anaconda \ envs, vous devez donc définir le PATH comme suit:

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

Maintenant, cela devrait fonctionner dans la fenêtre de commande:

activate py33

La ligne ci-dessus est l'équivalent Windows du code qui apparaît normalement dans les tutoriels pour Mac et Linux:

$ source activate py33

Plus d'informations: https://groups.google.com/a/continuum.io/forum/#!topic/anaconda/8T8i11gO39U

Est-ce que `anaconda` crée une variable PYTHONPATH séparée pour chaque nouvel environnement?


6
Je ne comprends pas à quoi activateça sert s'il ne définit pas la variable de chemin pour moi.
Asad Saeeduddin

7
C'est un bug. J'ai envoyé un correctif , j'espère que la prochaine version fonctionne correctement.
remramer le

3
sous Windows, utilisez la activatecommande dans le cmdterminal d'invite
phillipsK

1
export PATH="/$HOME/anaconda/bin:$PATH"fonctionnera pour les utilisateurs de MAC OS X. C'est ce que j'ai fait pour que mes virtualenv fonctionnent.
Programmeur intelligent

4
J'ai utilisé PowerShell et la méthode ci-dessus ne fonctionne pas. Sur cmd cependant cela fonctionne très bien.
kon psych

57

Utilisez cmd au lieu de Powershell! J'ai passé 2 heures avant de passer à cmd et puis ça a marché!

créer un environnement:

conda create -n your_environment_name

voir la liste des environnements conda:

conda env list

activez votre environnement:

conda activate your_environment_name

C'est tout les gens


13

Notez que la commande d'activation d'un environnement a changé dans Conda version 4.4. La méthode recommandée pour activer un environnement est maintenant conda activate myenvau lieu de source activate myenv. Pour activer la nouvelle syntaxe, vous devez modifier votre .bashrcfichier. La ligne qui lit actuellement quelque chose comme

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

Devrait être remplacé par

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

Cela ajoute seulement la condacommande au chemin, mais n'active pas encore l' baseenvironnement (qui était précédemment appelé root). Pour faire aussi cela, ajoutez une autre ligne

conda activate base

après la première commande. Voir tous les détails dans le billet de blog d'Anaconda de décembre 2017. (Je pense qu'il manque actuellement une nouvelle ligne entre les deux lignes sur cette page, dit-il .../conda.shconda activate base).

(Cette réponse est valable pour Linux, mais elle peut également être pertinente pour Windows et Mac)


8

Toutes les anciennes réponses semblent dépassées.

conda activatea été introduit en conda4.4 et 4.6.

conda activate: La logique et les mécanismes sous-jacents à l'activation de l'environnement ont été retravaillés. Avec conda 4.4, conda activateet conda deactivatesont désormais les commandes préférées pour activer et désactiver les environnements. Vous constaterez qu'elles sont beaucoup plus vives que les commandes source activateet source deactivatedes versions précédentes de conda. La conda activatecommande présente également les avantages (1) d'être universelle sur tous les systèmes d'exploitation , shells et plates-formes, et (2) de ne pas avoir de collisions de chemin avec les scripts d'autres packages comme le script d'activation de python virtualenv.

Exemples

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

Ces nouvelles sous-commandes sont disponibles automatiquement dans "Aanconda Prompt" et "Anaconda Powershell Prompt". Pour utiliser conda activatedans chaque shell (normal cmd.exeet powershell), cochez la commande exposer condadans chaque shell sous Windows .

Références


vous n'avez pas besoin -nd'activer. C'est juste conda activate baseassez bien.
Shital Shah le

7

Comme vous pouvez le voir dans le message d'erreur, les chemins que vous avez spécifiés sont incorrects. Essayez-le comme ceci:

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

Cependant, lorsque j'ai eu besoin d'installer Anaconda, je l'ai téléchargé à partir d' ici et je l'ai installé dans les chemins par défaut ( C:\Anaconda), puis j'ai mis ce chemin vers les variables d'environnement, donc maintenant l'interpréteur Anacondas est utilisé par défaut. Si vous utilisez PyCharm, par exemple, vous pouvez y spécifier directement l'interpréteur.


Je spécifie le chemin où l'environnement anaconda est installé. J'ai copié le `activate ...` directement à partir de la conda createsortie et j'ai essayé de l'exécuter à partir C:/de ainsi qu'à partir de C:/pr/temp/venv. Ça ne marche toujours pas ...
pandita

4

Voici comment cela a fonctionné pour moi

  1. C: \ Windows \ system32> set CONDA_ENVS_PATH = d: \ votre \ emplacement
  2. C: \ Windows \ system32> infos conda

Affiche le nouveau chemin d'environnement

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

Clone l'environnement racine par défaut

  1. C: \ Windows \ system32> activer YourNewEnvironment

Désactivation de l'environnement "d: \ YourDefaultAnaconda3" ... Activation de l'environnement "d: \ your \ location \ YourNewEnvironment" ...

  1. [Votre nouvel environnement] C: \ Windows \ system32> conda info -e

environnements conda: #

YourNewEnvironment
* d: \ votre \ location \ YourNewEnvironment

racine d: \ YourDefaultAnaconda3


4

J'ai essayé d'activer env à partir du travail Jenkins (en bash) avec conda activate base et cela a échoué, donc après de nombreux essais, celui-ci a fonctionné pour moi (CentOS 7):

source /opt/anaconda2/bin/activate base

2

Supposons que le nom de votre environnement soit 'demo' et que vous utilisez anaconda et que vous souhaitez créer un environnement virtuel:

(si vous voulez python3)

    conda create -n demo python=3

(si vous voulez python2)

    conda create -n demo python=2

Après avoir exécuté la commande ci-dessus, vous devez activer l'environnement par la commande ci-dessous:

    source activate demo 

1

Pour moi, utiliser Anaconda Prompt au lieu de cmd ou PowerShell est la clé.

Dans Anaconda Prompt, tout ce que j'ai à faire est activate XXX


1

tout comme @Simba a répondu à juste titre, beaucoup de choses ont changé dans l'environnement conda depuis 4.6. Conda activate (env-name)renversé source activate (env-name)pour de bon mais pas sans ses propres défis. conda activatesouvent forcer votre environnement à se baser et vous faire voir quelque chose comme (base). Par conséquent, vous renvoyez des tas d'erreurs. Cela peut également être dû au auto_activate_basefait qu'il est défini sur True.

Vous pouvez vérifier cela en utilisant la commande suivante

conda config --set auto_activate_base False

source ~/.bashrc.

Et pour réactiver utilisez ceci

conda config --set auto_activate_base True

source ~/.bashrc


0

J'avais le même, un correctif semble avoir été fait dans la source .


2
Salut @Nelson, notez que le lien que vous avez fourni est maintenant en panne. peut-être mettre les instructions contenues dans ce lien dans votre réponse à la place?
Tshilidzi Mudau

0

Fenêtre: conda activate nom_environnement

Mac: conda activer nom_environnement

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.