135 votes

L'activation de Conda ne fonctionne pas ?

 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

L'environnement est activé sans erreur. Ensuite nous vérifions à quel python il se réfère. Il ne change pas, pourquoi ?

0 votes

Avez-vous vérifié votre dossier env ? Le mien était vide car je n'ai pas fourni de version de python. S'il est vide, il est activé mais il n'y a pas de python.

0 votes

Utilisez ceci dans votre cmd : activate <envname>

0 votes

Pour les autres personnes qui rencontrent ce problème, le problème pourrait également être ce bogue connu : github.com/conda/conda/issues/9392

153voto

darthbith Points 6033

À partir de conda 4.4, la commande

conda activate <envname>

est le même sur toutes les plateformes. La procédure pour ajouter conda à la PATH pour les plates-formes non-Windows (sous Windows, vous devez utiliser l'invite Anaconda), ainsi que la procédure de modification de l'activation de l'environnement, sont détaillés dans le document intitulé notes de mise à jour pour conda 4.4.0.


Pour les versions de conda antérieures à la 4.4, la commande est soit

source activate <envname>

sur Linux et macOS ou

activate <envname>

sur Windows. Vous devez supprimer le conda .

4 votes

On ne peut pas utiliser la source avec du poisson.

1 votes

Vous devez alors ajouter cette exigence dans votre message.

2 votes

Aussi, selon ce post, source est la commande correcte : superuser.com/a/84624/229278 Vous devrez peut-être installer des dépendances supplémentaires : superuser.com/a/1235985/229278

37voto

stephinity Points 181

Pour utiliser "conda activate" via Windows CMD, pas l'invite d'Anaconda :
(en réponse à la question d'okorng, bien que l'utilisation de l'Anaconda Prompt soit l'option préférée)

Tout d'abord, nous devons ajouter le script activate.bat script à votre chemin :
Via CMD :

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

Ou via le Panneau de configuration, ouvrez "Comptes d'utilisateurs" et choisissez "Modifier mes variables d'environnement".

Puis appeler directement depuis le CMD de Windows :

activate <environment_name>

sans utiliser le préfixe "conda".

(Testé sur Windows 7 Enterprise avec Anaconda3-5.2.0)

1 votes

Notez que vous devez avoir des privilèges d'administrateur pour accomplir cette tâche. Si vous ajoutez le chemin d'accès à l'aide du processus ci-dessus sans privilèges d'administrateur, aucune erreur ne sera signalée. Cependant, si vous fermez et rouvrez l'invite de commande, et exécutez echo %PATH% votre monnaie ne sera pas là.

0 votes

@Foggy Vous pouvez également ajouter l'Anaconda \Scripts PATH à vos "variables d'environnement utilisateur" sans avoir les droits d'administrateur (à la fois sur Win 7 et Win 10). Celles-ci " persisteront " ensuite pour les nouvelles invites de commande (après la première déconnexion / redémarrage de votre machine).

10voto

erewok Points 1577

Je viens de créer un nouvel environnement avec Conda et les choses sont différentes. Mon sys.path n'était pas correct pendant un moment jusqu'à ce que je trouve un moyen.

Par conséquent, je tiens à signaler à toute personne déroutée par un changement dans conda Si vous avez mis à jour Conda et créé un environnement, il vous le dira désormais (contrairement au comportement précédent) :

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

Ainsi, le nouveau La façon d'activer/désactiver les environnements est de procéder comme indiqué ci-dessus.

En effet, si vous effectuez une mise à jour à partir d'une ancienne version de conda et que vous essayez ce qui précède, vous verrez peut-être le message utile suivant (ce que j'ai fait) :

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's 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! ^^^

La modification de ce qui précède a résolu mes problèmes avec sys.path dans les environnements conda activés.

7 votes

Les instructions ci-dessus supposent un environnement Mac/Linux avec la référence à un shell de type Bash ou Bourne. Qu'en est-il du shell CMD standard de Windows ? Mon dossier miniconda3/etc/profile.d ne contient que des fichiers conda.sh et conda.csh, mais pas de version Windows de conda.bat. En existe-t-il une pour prendre en charge ces instructions ? Merci.

5 votes

J'ai suivi ces instructions et j'obtiens toujours cette erreur, même si Conda semble fonctionner autrement. C'est très étrange.

8voto

Shuai Li Points 11

Essayez ça :

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

Puis source ~/.bashrc Cela fonctionne pour moi pour le même problème.

0 votes

C'est également une réponse pour les installations où il n'y a pas de dossier d'accueil. Parfois, il n'y a qu'un "utilisateur" racine et pas de répertoire personnel. Ajoutez simplement le chemin d'accès à miniconda/bin ou anaconda3/bin (où que vous l'ayez installé) à $PATH et il devrait commencer à fonctionner. par ex. export PATH=/root/minconda3/bin:$PATH

5voto

Meesha Hansi Points 39

Dans l'environnement Windows, utilisez "anaconda prompt" au lieu de "command prompt".

0 votes

Merci. En Powershell sur Windows 10, rien ne s'est passé, pas de message d'erreur mais aussi pas d'activation de l'environnement. L'utilisation du "anaconda prompt" a fonctionné.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X