web-dev-qa-db-fra.com

Que fait conda quand on "résout l'environnement"

Chaque fois que je lance conda install/remove/update <package>, il me dit que c'est "environnement de résolution" pendant un certain temps avant de me dire la liste des choses qu'il va télécharger/installer/mettre à jour. Vraisemblablement, il recherche des dépendances pour <package>, mais pourquoi parfois remove packages après avoir effectué cette opération? Par exemple, alors que j'essayais d’installer Mayavi, il a été décidé de supprimer Anaconda Navigator. 

De plus, il ne permet pas d’exécuter uniquement un sous-ensemble des opérations suggérées. Y a-t-il un moyen de spécifier que je ne veux pas qu'un paquet soit supprimé?

12
dkv

Vous pouvez ajouter l'option --debug à la commande conda et voir la sortie de la console (ou du terminal). Par exemple, tapez conda update --debug numpy. Dans la sortie, vous pouvez voir que le client demande repodata.json à partir de la liste des chaînes et effectue des calculs localement dans l'étape Solving Environment.

9
zhaofeng-shu33

En guise de note sur l'étape "Résolution de l'environnement" ...
L'absence de privilèges d'administrateur peut avoir une incidence sur le choix d'installer les packages Python.

J'ai constaté que mes installations se bloqueraient à l'étape "Résolution des problèmes" et ne réussiraient jamais lorsque j'essayais d'installer des packages alors que j'étais connecté en tant que non administrateur. 

Passer à admin était possible pour moi sur la machine sur laquelle j'étais coincé, alors je l'ai fait et cela a résolu le problème.

Le commentateur explique la solution de contournement lorsque cela n'est pas possible.

1
Katyjean57