web-dev-qa-db-ja.com

Conda 'ImportError:ruamel.yaml.commentsというモジュールはありません'

Condaでコマンドを実行するとエラーが発生します。

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
11
Nipun Garg

モジュールruamel.yaml.commentsは通常、site-packages/ruamel/yaml/comments.pyからではなく、site-packages/ruamel_yaml/comments.pyからロードされます。

Condaには、名前空間(ruamel.)を適切にサポートすることに問題があるようです。これは、pipと完全に互換性がない(まだ)だけだと考えることができます。 "名前空間は素晴らしいアイデアです" であり、パッケージの名前空間は長年にわたって存在しています。

「conda」インストールをpipで拡張できると仮定すると、ruamel.yamlの通常のインストールを次のように試みることができます。

 pip install ruamel_yaml==0.11.14

通常、このような古いバージョンはお勧めしませんが、condaが内部で使用するバージョンと組み合わせて動作する可能性が高くなります。

代わりにpythonとcondaなしのpipを使用するように切り替えると、PyPIの最新バージョンのソフトウェアを使用できます。

12
Anthon

pip install ruamel.yaml

わたしにはできる。

8
Nicholas Luo

Sudo pip install ruamel_yaml

4
Sergei

上記の答えは私にはうまくいきませんでした。 conda docs here で説明されているように、コアのcondaコンポーネントを新規インストールする必要がありました。以下をコピーして貼り付けます:

問題:condaが壊れているため、現在のインストールを吹き飛ばさずに修正したいインストールされ、続行できません。強制的にインストールしたい。

解決策:-f(強制)オプションを使用してMinicondaをインストールします。次のように、forceまたは-fオプションを使用して、Minicondaダウンロードページからコンピューターオペレーティングシステムに適切なMinicondaをダウンロードしてインストールします。

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

注:ご使用のオペレーティングシステムの適切なファイル名とバージョンに置き換えてください。

注:コアcondaファイルを上書きし、新しいフォルダーに複製をインストールしないように、必ず既存のインストールと同じインストール場所にインストールしてください。

1
spacetyper

私はこのファイルに行きました:

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

この行を編集しました:

import ruamel.yaml as yaml 

読む

import ruamel_yaml as yaml 

ドットをアンダースコアに変更するとうまくいきました。

1
user612161