【问题标题】:How to activate an Anaconda environment如何激活 Anaconda 环境
【发布时间】:2013-12-03 14:00:32
【问题描述】:

我在 Windows 8 上,使用 Anaconda 1.7.5 64 位。

我用

创建了一个新的 Anaconda 环境

conda create -p ./test python=2.7 pip

来自C:\Pr\TEMP\venv\

这很好用(有一个包含新 python 发行版的文件夹)。 conda 告诉我输入

activate C:\PR\TEMP\venv\test

激活环境,但是这会返回:

No environment named "C:\PR\temp\venv\test" exists in C:\PR\Anaconda\envs

如何激活环境?我做错了什么?

【问题讨论】:

  • 今天遇到了这个问题。看起来很像一个bug,报告为conda-env#59

标签: python virtualenv anaconda conda


【解决方案1】:

从错误消息中可以看出,您指定的路径是错误的。试试这样:

activate ..\..\temp\venv\test

但是,当我需要安装 Anaconda 时,我从 here 下载并安装到默认路径(C:\Anaconda),而不是将此路径放入环境变量,所以现在使用 Anacondas 解释器作为默认路径.例如,如果您使用的是 PyCharm,则可以直接在此处指定解释器。

【讨论】:

  • 我正在指定安装anaconda环境的路径。我直接从conda create 输出复制了`activate ...`,并尝试从C:/C:/pr/temp/venv 运行它。还是不行……
【解决方案2】:

我也遇到了同样的问题,source 似乎已修复。

【讨论】:

  • 嗨@Nelson,请注意,您提供的链接现在已关闭。也许将包含在该链接中的说明放在您的答案中?
【解决方案3】:

如果发生这种情况,您需要为您的环境设置 PATH(以便它从环境和 Windows 上的 Scripts\ 中获取正确的 Python)。

想象一下,您已经使用以下方法创建了一个名为 py33 的环境:

conda create -n py33 python=3.3 anaconda

这里的文件夹默认创建在 Anaconda\envs 中,所以需要设置 PATH 为:

set PATH=C:\Anaconda\envs\py33\Scripts;C:\Anaconda\envs\py33;%PATH%

现在它应该可以在命令窗口中工作了:

activate py33

上面这行代码相当于 Windows 和 Mac 和 Linux 教程中通常出现的代码:

$ source activate py33

更多信息: https://groups.google.com/a/continuum.io/forum/#!topic/anaconda/8T8i11gO39U

Does `anaconda` create a separate PYTHONPATH variable for each new environment?

【讨论】:

  • 我不明白activate 没有为我设置路径变量有什么意义。
  • 这是一个错误。我发送了a fix,希望下一个版本能正常工作。
  • 在 Windows 上,在cmd 提示终端中使用activate 命令
  • export PATH="/$HOME/anaconda/bin:$PATH" 适用于 MAC OS X 用户。这就是我为使我的 virtualenvs 工作所做的工作。
  • 我用了powershell,上面的方法不行。但是在 cmd 上它工作正常。
【解决方案4】:

以下是它对我的工作方式

  1. C:\Windows\system32>设置 CONDA_ENVS_PATH=d:\your\location
  2. C:\Windows\system32>conda 信息

显示新的环境路径

  1. C:\Windows\system32>conda create -n YourNewEnvironment --clone=root

克隆默认根环境

  1. C:\Windows\system32>激活 YourNewEnvironment

停用环境“d:\YourDefaultAnaconda3”... 激活环境“d:\your\location\YourNewEnvironment”...

  1. [YourNewEnvironment] C:\Windows\system32>conda info -e

conda 环境: #

你的新环境
* d:\your\location\YourNewEnvironment

root d:\YourDefaultAnaconda3

【讨论】:

    【解决方案5】:

    请注意,激活环境的命令在 Conda 4.4 版中已更改。现在推荐的激活环境的方法是conda activate myenv,而不是source activate myenv。要启用新语法,您应该修改 .bashrc 文件。当前读取类似于

    的行
    export PATH="<path_to_your_conda_install>/bin:$PATH"
    

    应该改为

    . <path_to_your_conda_install>/etc/profile.d/conda.sh
    

    这只会将conda 命令添加到路径中,但尚未激活base 环境(以前称为root)。为此,请添加另一行

    conda activate base
    

    在第一个命令之后。从 2017 年 12 月开始,请参阅 Anaconda's blog post 中的所有详细信息。(我认为此页面目前在两行之间缺少换行符,上面写着 .../conda.shconda activate base)。

    (此答案适用于 Linux,但可能也适用于 Windows 和 Mac)

    【讨论】:

      【解决方案6】:

      使用 cmd 代替 Powershell! 我用了2个小时才切换到cmd,然后就成功了!

      创建环境:

      conda create -n your_environment_name
      

      查看 conda 环境列表:

      conda env list
      

      激活您的环境:

      conda activate your_environment_name
      

      就是这样

      【讨论】:

        【解决方案7】:

        假设您的环境名称是 'demo',并且您正在使用 anaconda 并希望创建一个虚拟环境:

        (如果你想要python3)

            conda create -n demo python=3
        

        (如果你想要python2)

            conda create -n demo python=2
        

        运行上述命令后,您必须通过以下命令激活环境:

            source activate demo 
        

        【讨论】:

          【解决方案8】:

          我尝试使用 Jenkins 作业(在 bash 中)激活 env conda activate base 失败了,所以经过多次尝试,这个对我有用(CentOS 7):

          source /opt/anaconda2/bin/activate base
          

          【讨论】:

            【解决方案9】:

            对我来说,使用 Anaconda Prompt 而不是 cmd 或 PowerShell 是关键。

            在 Anaconda Prompt 中,我只需要activate XXX

            【讨论】:

            • 这是对我有用的。在我“激活基础”之后,(base) 出现在我的 bash shell 的顶部。
            【解决方案10】:

            所有以前的答案似乎都已经过时了。

            conda activate 是在 conda 4.4 和 4.6 中引入的。

            conda activate:环境激活的逻辑和机制已经重新设计。在 conda 4.4 中,conda activateconda deactivate 现在是激活和停用环境的首选命令。您会发现它们比以前 conda 版本中的 source activatesource deactivate 命令要灵活得多。 conda activate 命令还具有以下优点:(1) 在所有操作系统、shell 和平台上通用,以及 (2) 不会与来自其他包(如 python virtualenv 的激活脚本)的脚本发生路径冲突。

            示例

            conda create -n venv-name python=3.6
            conda activate -n venv-name
            conda deactivate
            

            这些新的子命令自动在“Aanconda Prompt”和“Anaconda Powershell Prompt”中可用。要在每个 shell(普通 cmd.exe 和 powershell)中使用 conda activate,请检查 expose conda command in every shell on Windows

            参考文献

            【讨论】:

            • 您不需要-n 来激活。只需conda activate base 就足够了。
            【解决方案11】:

            虽然@Simba 当时有一个很好的答案,但自 4.6 以来 conda env 发生了很多变化。 Conda activate (env-name) 推翻 source activate (env-name) 好,但并非没有它自己的挑战。 conda activate 经常强迫你的环境基地,让你看到这样的东西:

            并向您抛出大量错误。这也可能是因为 auto_activate_base 设置为 True。

            您可以使用以下命令进行检查

            conda config --set auto_activate_base False
            source ~/.bashrc
            

            然后重新激活使用这个

            conda config --set auto_activate_base True
            source ~/.bashrc
            

            【讨论】:

              【解决方案12】:

              窗口: conda activate environment_name

              Mac:conda activate environment_name

              【讨论】:

                猜你喜欢
                • 2016-11-28
                • 2020-03-14
                • 2021-09-06
                • 1970-01-01
                • 2019-09-15
                • 2016-12-17
                相关资源
                最近更新 更多