conda命令在conda环境中不可用

2024-10-01 15:38:23 发布

您现在位置:Python中文网/ 问答频道 /正文

为什么我不能从conda环境更新conda,但我可以使用它?在

一个例子

我可以从^{更新conda

[ravas@localhost ~]$ source activate
(base) [ravas@localhost ~]$ conda update conda
Solving environment: done

# All requested packages already installed.

我无法从p36更新它:

^{pr2}$

这似乎是因为conda没有安装在p36

(base) [ravas@localhost ~]$ conda list | grep conda
# packages in environment at /home/ravas/miniconda3:
anaconda-client           1.7.1                    py37_0  
anaconda-navigator        1.9.2                    py37_0  
conda                     4.5.11                   py37_0  
conda-env                 2.6.0                         1  

(p36) [ravas@localhost ~]$ conda list | grep conda
# packages in environment at /home/ravas/miniconda3/envs/p36:
anaconda                  5.3.0                    py36_0  
anaconda-client           1.7.2                    py36_0  
anaconda-project          0.8.2                    py36_0  
pdfminer.six              20170720                 py36_0    conda-forg

但是,从p36我可以使用conda

(p36) [ravas@localhost ~]$ conda update anaconda
Solving environment: done

# All requested packages already installed.

为什么?在


Tags: localhostbaseenvironmentpackagesupdateanacondaallconda
2条回答

这是shell(Bash、zsh、csh、fish等)如何找到要执行的程序的结果。(你在程序中运行的命令是终端的类型)。shell在PATH环境变量中指定的文件夹中查找可执行文件。它按照在该变量中指定的顺序搜索这些文件夹。如果在环境激活的情况下查看PATH的内容,它应该类似于

$ echo $PATH
/home/ravas/miniconda3/envs/p36/bin:/home/ravas/miniconda3/bin:...

当shell试图找到conda可执行文件时,它首先在environment目录中查找;如果找不到它,它会在base目录中查找,它确实在那里找到了它!在

conda未安装在新环境中。但是您可以在如下派生环境中得到conda

  • 激活基础环境
  • 激活你的其他环境
  • 运行conda install conda

现在在另一个环境中有一个conda,并像往常一样使用该环境。在

相关问题 更多 >

    热门问题