python - 我应该在每个虚拟环境中安装 conda 吗?

标签 python python-3.x windows conda anaconda3

我刚刚在 Windows 7 上全新安装了 Anaconda3 (python 3.7),并创建了几个虚拟环境。我没有尝试就造成了一些困惑。

  1. 我的基本全新安装的第一个克隆中没有有 conda,并且在其 PATH 中没有有基本安装。因此,运行 conda 的唯一方法是指定基本安装的完整路径。看来是错误的。

  2. 我从 yml 文件创建的 python 3.5 env 中包含旧版本的 conda,并且其 PATH 中没有基本 env。它运行旧版本并警告我更新它。看来也是错误的。

  3. 我最近的 Base 克隆没有 conda,但它的路径中确实有基本环境,因此它运行基本 conda。

第三种情况应该总是这样吗?

如何解决情况一和情况二?

下次有什么需要注意的地方,以避免出现第一种和第二种情况吗?

更新:

  1. 第一种情况与环境本身无关,而是与 conda 在克隆过程中创建的“开始”菜单快捷方式有关。当我在底座中打开控制台,然后激活该环境时,一切正常。我可以忍受这一点。

  2. 我在旧的 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

它警告我,condaconda-env 包不会被复制,这导致了您在情况 #3 中的配置。

要修复情况 (2),从 YAML 中删除 condaconda-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/

相关文章:

json - pandas json_normalize 展平嵌套字典

c++ - 从不同机器同时调用 CreateDirectory 或 CreateFile 时会发生什么?

c++ - 使用自定义安装目录在 Windows 上的 Code::Blocks 中链接 SDL-bgi

python - 如何遍历所有这些可能性?

python - output_graph.pb 上的 tf.GraphKeys.TRAINABLE_VARIABLES 导致空列表

python - 通过串行传输标准输出不起作用

python - 文本解释为 bool 值

python - 对特定行应用列减法

python - 如何使用 Imdbpy 库获取电影的长度?

c++ - 订阅windows系统事件原生c++