我刚刚在 Windows 7 上全新安装了 Anaconda3 (python 3.7),并创建了几个虚拟环境。我没有尝试就造成了一些困惑。
我的基本全新安装的第一个克隆中没有有 conda,并且在其 PATH 中没有有基本安装。因此,运行 conda 的唯一方法是指定基本安装的完整路径。看来是错误的。
我从 yml 文件创建的 python 3.5 env 中包含旧版本的 conda,并且其 PATH 中没有基本 env。它运行旧版本并警告我更新它。看来也是错误的。
我最近的 Base 克隆没有 conda,但它的路径中确实有基本环境,因此它运行基本 conda。
第三种情况应该总是这样吗?
如何解决情况一和情况二?
下次有什么需要注意的地方,以避免出现第一种和第二种情况吗?
更新:
第一种情况与环境本身无关,而是与 conda 在克隆过程中创建的“开始”菜单快捷方式有关。当我在底座中打开控制台,然后激活该环境时,一切正常。我可以忍受这一点。
我在旧的 python 3.5 安装中使用以下命令创建了此 yml 文件:
conda env export -n base > file.yml
。所以yml文件中包含了以下与conda相关的项目:- anaconda-clean=1.1.0=py35_0
- anaconda-client=1.7.2=py35_0
- anaconda=custom=py35_0
- anaconda-navigator=1.9.2=py35_0
- conda=4.5.11=py35_0
- conda-build=2.1.4=py35_0
- conda-env=2.6.0=h36134e3_1
- conda-verify=2.0.0=py35_0
- nb_anacondacloud=1.2.0=py35_0
- nb_conda=2.0.0=py35_0
- nb_conda_kernels=2.0.0=py35_0
那么问题的开放部分是:上面列出的哪些与 conda 相关的项目不应该出现在 python 3.5 环境中?
最佳答案
是的,场景 #3,即 conda
仅在 base 环境中,使用 base bin/
PATH
中的目录似乎是标准配置。
当我克隆我的基地时,即,
conda create -n base-clone --clone base
它警告我,conda 和 conda-env 包不会被复制,这导致了您在情况 #3 中的配置。
要修复情况 (2),从 YAML 中删除 conda 和 conda-env 可能就足够了,然后重新创建环境。
不确定情况 (1),但通常情况下,基 bin/
目录应位于 PATH
在大多数默认安装中,激活另一个环境(无论是否克隆)不应影响该条目,而只会在前面添加 envs/your-env/bin/
(更高优先级)至 PATH
.
我想我应该添加免责声明,即这全部来自经验/测试(在 MacOS 10.14 上通过 Miniconda 安装 conda v4.5.12),而不是对 conda 内部结构的任何直接了解。
关于python - 我应该在每个虚拟环境中安装 conda 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54234514/