web-dev-qa-db-fra.com

Conda 'ImportError: Aucun module nommé ruamel.yaml.comments'

Conda donne une erreur lorsque je lance une commande avec.

Traceback (most recent call last):
  File "/usr/local/bin/conda", line 7, in <module>
    from conda.cli.main import main
  File "/usr/local/lib/python2.7/dist-packages/conda/cli/__init__.py", line 8, in <module>
    from .main import main  # NOQA
  File "/usr/local/lib/python2.7/dist-packages/conda/cli/main.py", line 46, in <module>
    from ..base.context import context
  File "/usr/local/lib/python2.7/dist-packages/conda/base/context.py", line 18, in <module>
    from ..common.configuration import (Configuration, MapParameter, PrimitiveParameter,
  File "/usr/local/lib/python2.7/dist-packages/conda/common/configuration.py", line 40, in <module>
    from ruamel.yaml.comments import CommentedSeq, CommentedMap  # pragma: no cover
ImportError: No module named ruamel.yaml.comments
9
Nipun Garg

Le module ruamel.yaml.comments sera normalement chargé à partir de site-packages/ruamel/yaml/comments.py et non à partir de site-packages/ruamel_yaml/comments.py

Conda semble avoir des problèmes pour prendre en charge correctement les espaces de nom (ruamel.), ce que je ne peux attribuer qu'à ne pas être (encore) totalement compatible avec pip. Cela bien que "les espaces de noms soient une bonne idée" , et les espaces de noms de paquets existent depuis de nombreuses années.

En supposant que vous puissiez étendre les installations "conda" avec pip, vous pouvez essayer de faire une installation normale de ruamel.yaml avec:

 pip install ruamel_yaml==0.11.14

Normalement, je ne recommanderais pas une version aussi ancienne, mais cela est plus susceptible de fonctionner en combinaison avec la version conda s’utilise en interne.

L’alternative serait d’utiliser python et pip sans conda, vous pourrez ainsi utiliser la dernière version du logiciel PyPI.

9
Anthon

Essayez pip install ruamel.yaml

Ça marche pour moi.

7
Nicholas Luo

Essayez Sudo pip install ruamel_yaml

4
Sergei

Je suis entré dans ce dossier:

/anaconda2/lib/python2.7/site-packages/dateparser/utils/__init__.py

édité cette ligne: 

import ruamel.yaml as yaml 

lire 

import ruamel_yaml as yaml 

Changer le point en trait de soulignement a fonctionné pour moi… J'espère que cela fonctionnera pour vous.

1
user612161

La réponse ci-dessus n'a pas fonctionné pour moi. Je devais faire une nouvelle installation des composants de base de conda comme décrit dans les conda docs ici . Copié et collé ci-dessous:

Problème: Mon conda est cassé et je veux le réparer sans supprimer l’installation actuelle Je reçois une erreur conda et je souhaite réinstaller Miniconda pour le réparer, mais lorsque j'essaie, l'erreur m'indique que Miniconda (ou Anaconda) est déjà installé et ne me permet pas de continuer. Je veux forcer l'installation.

Résolution: Installez Miniconda à l’aide de l’option -f (force) Téléchargez et installez Miniconda en fonction du système d'exploitation de votre ordinateur à partir de la page de téléchargement de Miniconda à l'aide de l'option force ou -f comme indiqué:

bash Miniconda3-latest-MacOSX-x86_64.sh -f

REMARQUE: remplacez le nom de fichier et la version appropriés par votre système opérateur.

REMARQUE: Assurez-vous d’installer le même emplacement d’installation que votre L’installation existante remplace les fichiers conda principaux et ne l’a pas installer une copie dans un nouveau dossier.

0
spacetyper