L'environnement Anaconda a été corrompu lorsque je pensais que Jupyter Notebook ne démarrerait pas

2019er mars 4

Quand je mets un nouveau paquet avec pip, il semble que l'environnement conda est cassé.Dans cet article, nous enregistrerons l'origine, la méthode d'enquête / confirmation de cause et la solution.

L'environnement au moment où cet accident s'est produit est le suivant. Le système d'exploitation est Windows 10.

version conda: 4.6.8 version conda-build: non installée version python: 3.7.2.final.0 OS: Windows 10 64 bits

Le début de l'affaire

Un jour, quand j'ai démarré Jupyter Notebook comme d'habitude, une fenêtre est apparue et a disparu en un instant.Même si vous réessayez ou redémarrez votre ordinateur, cela ne change pas du tout ...

Je l'ai mis dans un nouveau package avec le pip que j'ai mis juste avant, alors j'ai pensé que je devrais tout mettre à jour pour le moment, à partir de l'invite Anaconda
・ Conda lui-même mise à jour ( conda update -n base conda)
-Mettre à jour tous les packages installés (conda update --all)
J'ai essayé.

Ensuite, l'affichage suivant est ...

Environnement de résolution: / AVERTISSEMENT conda.common.logic: get_sat_solver_cls (278): impossible d'exécuter le solveur SAT via l'interface «pycosat». Échec CondaDependencyError: impossible d'exécuter le solveur. Aucune implémentation SAT fonctionnelle disponible.

Apparemment, le "solveur SAT" ne fonctionne pas bien.

Sur la page officielleArticle sur le fonctionnement de CondaIl semble que conda utilise le solveur SAT pour "collecter des métadonnées pour tous les packages de l'environnement et vérifier que leurs dépendances sont correctement satisfaites".

Le fait que les paquets dans l'environnement ne peuvent pas être saisis signifie que quelque chose est arrivé à l'environnement.

Méthode de confirmation

En conclusion, cela était dû à une collision entre conda et pip.Pour la cause, je me suis beaucoup référé au site suivant.

conda et pip: Risque de mélange

«L'utilisation de pip sous Anaconda détruira de manière inattendue l'environnement et, dans le pire des cas, vous obligera à réinstaller Anaconda lui-même.»
"Si vous voulez voir s'il y a un conflit pip et conda dans votre environnement conda déjà construit,conda listÉxécuter. "

Votre propre environnementconda listSi vous vérifiez avec, il y a certainement des chevauchements (mis en évidence sur un fond blanc dans l'image).

Dupliquer les packages installés avec conda et pipDe plus, "pypi" est affiché à l'extrême droitepip installPar, non marquéconda installC'est dû à.

Cela peut être entré en conflit avec ce qui a été installé par pip et le solveur SAT n'a pas pu s'exécuter, ce qui a entraîné le blocage de l'environnement conda lui-même.

Réinstaller Anaconda

Vous ne pouvez pas désinstaller à l'aide d'Anaconda-Clean car l'invite Anaconda ne fonctionne pas.

Supprimez-le de [Désinstaller un programme] dans [Panneau de configuration] et réinstallez-le.Les détails sont également résumés ci-dessous.


Différence entre conda install et pip installJ'ai également enquêté à ce sujet, donc j'apprécierais que vous y fassiez référence.