为什么我不能从conda环境中更新conda,但我可以使用它?
示例
我可以从conda
更新root
[ravas@localhost ~]$ source activate
(base) [ravas@localhost ~]$ conda update conda
Solving environment: done
# All requested packages already installed.
我不能从p36
更新它
(base) [ravas@localhost ~]$ source activate p36
(p36) [ravas@localhost ~]$ conda update conda
PackageNotInstalledError: Package is not installed in prefix.
prefix: /home/ravas/miniconda3/envs/p36
package name: conda
这似乎发生在p36
中没有安装conda时。
(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.
为什么会这样呢?
发布于 2018-10-11 20:34:28
这是壳(Bash、zsh、csh、fish等)的结果。查找要执行的程序。( shell是正在运行以处理在终端中键入的命令的程序)。shell在PATH
环境变量中指定的文件夹中查找可执行文件。它按照在该变量中指定的顺序搜索这些文件夹。如果您查看激活了环境的PATH
的内容,它应该如下所示
$ echo $PATH
/home/ravas/miniconda3/envs/p36/bin:/home/ravas/miniconda3/bin:...
当shell试图找到conda
可执行文件时,它首先在环境目录中查找;当它在那里找不到它时,它会在base
目录中找到它!
发布于 2018-10-12 09:27:23
新环境中没有安装conda
。但是您可以在这样的派生环境中获得一个conda
:
conda install conda
现在,您在另一个环境中有了一个conda
,并与通常的环境一起工作。
https://stackoverflow.com/questions/52764416
复制相似问题