Conda' ImportError:没有名为ruamel.yaml.comments的模块'

时间:2016-12-29 05:50:06

标签: python yaml anaconda conda ruamel.yaml

当我用它运行任何命令时,Conda会出错。

npm install xxxx --save

12 个答案:

答案 0 :(得分:9)

模块ruamel.yaml.comments通常会从site-packages/ruamel/yaml/comments.py加载,而不是从site-packages/ruamel_yaml/comments.py加载

Conda似乎在正确支持名称空间(ruamel.)方面存在问题,我只能将其归为(尚未)完全pip兼容。虽然"namespaces are a honking good idea"和包命名空间已存在很多年了。

假设您可以扩展" conda"使用pip的安装,您可以尝试使用以下内容正常安装ruamel.yaml

 pip install ruamel_yaml==0.11.14

我通常不会推荐这样一个旧版本,但这更有可能与conda在内部使用的版本结合使用。

另一种方法是切换到使用python和pip而不使用conda,这样你就可以使用PyPI的最新版软件。

答案 1 :(得分:7)

尝试pip install ruamel.yaml

它对我有用。

答案 2 :(得分:4)

尝试sudo pip install ruamel_yaml

答案 3 :(得分:2)

进入anaconda3\lib\site-packages\rpcq_base.py 并更改第 22 行:

from ruamel import yaml

from ruamel_yaml as yaml

答案 4 :(得分:1)

我进入了这个档案:

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

编辑了这一行:

import ruamel.yaml as yaml 

阅读

import ruamel_yaml as yaml 

将点更改为下划线对我有用....我希望它适合您。

答案 5 :(得分:1)

尝试conda install ruamel.yaml ...一点对我没有帮助

答案 6 :(得分:0)

上述答案对我不起作用。我不得不重新安装核心conda组件,如conda docs here中所述。复制并粘贴在下面:

  

问题:我的conda坏了,我想在不吹走当前安装的情况下修复它   我收到一个conda错误,并希望重新安装Miniconda来修复它,但是当我尝试时,它给我的错误,Miniconda(或Anaconda)已经安装,不会让我继续。我想强制安装。

     

解决方案:使用-f(强制)选项安装Miniconda   使用force或-f选项从Miniconda下载页面下载并安装适用于您的计算机操作系统的Miniconda,如下所示:

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

注意:替换适当的文件名和版本   操作系统。

     

注意:请确保安装到与您相同的安装位置   现有的安装,所以它覆盖核心conda文件,但没有   在新文件夹中安装副本。

答案 7 :(得分:0)

这可能不是一个流行的答案,但是经过许多小时的故障排除后,它最终对我有所帮助:

  1. 在我的主目录fwiw中卸载conda(我使用了this stack overflow solution)和rm -rf miniconda3。
  2. 使用data camp's tutorial重新安装了conda。

很多次敲打头后,没有其他解决方案对我有用。

答案 8 :(得分:0)

对于python3使用

pip3 install ruamel_yaml

如果未安装pip3,请先尝试

sudo apt install python3-pip 

答案 9 :(得分:0)

对我来说,这是一个 conda/pip 错误。我试图通过 pip 安装(在我的情况下为 cwltool)。
它成功完成,但随后运行任何命令都给了我上述错误。

ImportError: No module named ruamel.yaml.

事实证明,pip 二进制文件不是我的 conda 环境的一部分,而是将 cwltool 安装到一个完全独立的位置。

为了解决这个问题,我完成了以下操作:

conda activate <env I want to install cwltool into>

conda install -y pip

# Run 'rehash' now if you're using zsh to ensure you're using the right pip

pip install cwltool

cwltool -h

答案 10 :(得分:0)

要添加到 @user612161 所说的内容,请转到需要 ruamel.yaml 的父模块(在本例中为 dateparser)的目录:

cd anaconda2/lib/python2.7/site-packages/dateparser

并通过以下命令(Linux)将所有出现的 ruamel.yaml 更改为 ruamel_yaml:

find . -name '*.py' | xargs sed -i 's/ruamel.yaml/ruamel_yaml/g'

答案 11 :(得分:0)

快速简便的方法是在升级时忽略之前安装的版本

 pip install --ignore-installed ruamel_yaml==0.17.4