打开终端时导入 conda 错误回溯

Import conda error traceback upon opening terminal

每次打开终端时都会显示以下代码行。

Traceback (most recent call last):
  File "<stdin>", line 3, in <module>
ImportError: No module named conda

我担心我可能已经破坏了我的(基本)conda 环境,但我 运行 到目前为止还没有遇到任何问题。主要是,看到它真的很烦人。

使用conda activate base没有错误。我最近所做的就是删除并重新安装不同版本的 opencv,这样我就有了一个允许我使用 imshow() 的版本。我也做了path_to_env_python -m pip3 install common。除此之外,我认为我没有做任何会导致问题的事情。

有什么想法吗?

我遇到了同样的问题 原因在.bashrc:

# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/myname/app/miniconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/home/myname/app/miniconda3/etc/profile.d/conda.sh" ]; then
        . "/home/myname/app/miniconda3/etc/profile.d/conda.sh"
    else
        export PATH="/home/myname/app/miniconda3/bin:$PATH"
    fi
fi
unset __conda_setup

有问题的线路:

eval "$__conda_setup"

通过将整个块替换为:

来解决
export PATH="/home/myname/app/miniconda3/bin:$PATH"

我认为这与上游问题有关,因为从今天早上开始我在两台不同的机器上都遇到了同样的问题。所以我建议不要修改你的 RC 文件。

有同样的问题。对我来说,一个临时修复是在 bashrc 中注释掉 eval 和它的 else if 循环。

conda 的 github 上有一个关于此问题的讨论帖: https://github.com/conda/conda/issues/9505

编辑:这是 4.8.0 anaconda 中的一个错误。在 <conda_install>/etc/bash_completion.d/conda 中调用 python 时没有添加通往 anaconda python 的路径,结果它打开了 python 2.7,然后尝试导入 conda。它已被最近的更新修复,所以 运行 conda update conda 应该可以解决这个问题!

错误已修复,您需要在终端中执行 conda update conda,它会非常有效。