Anaconda选择环境Mac OS

时间:2018-02-08 20:19:40

标签: python opencv anaconda

我在MacOS 10.12上使用Python 3.6运行Anaconda 3。

我使用conda create --name my-env python=2.7 anaconda (e.g. here)使用python 2.7和opencv创建了一个环境。我使用source activate my-env激活了环境并安装了opencv。创建和激活似乎都有效:anaconda3/envs/my-env文件夹存在,我的终端显示(my-env) bob:~ alice'。

但是如何让Anaconda使用新环境?

我试过了:

  • 启动默认Anaconda-Navigator.app,这只使用默认的python路径
  • 更改~/.bash-profile中的路径,但Anaconda仍会尝试默认的python路径
  • 启动位于Anaconda-Navigator.app文件夹中的my-env,失败并显示操作系统错误消息"无法打开"
  • 从终端退出并显示错误消息:FSPathMakeRef(〜/ anaconda3 / envs / my-env / Anaconda-Navigator)失败,错误为-43。

因为我在某处看到Anaconda 3可能与Python 2.7不能很好地兼容,所以我再次尝试了相同的工作流程,但是使用python 3.5.4创建了一个环境。再无济于事。

我错过了什么?

1 个答案:

答案 0 :(得分:2)

使用conda创建env后,有两种方法可以在env中运行程序:

  1. 通过默认的anaconda-navigator(anaconda的GUI),左边应该有一个菜单,其中包含以下选项:Home,Environments,Projects(beta),...
    只需点击环境并选择/创建一个新环境(见截图)
  2. enter image description here

    “基础上的应用程序(根)”也可以更改。如果它不显示这些选项,我建议你更新conda。

    1. 通过终端:如前所述激活env然后只需运行你想要的程序,例如spyder,它应该使用正确的py版本。
    2. 我的默认版本的anaconda,“root(base)”运行python 2,因此我在.bash_profile文件中添加了几行,以便在默认环境或特定环境中轻松运行python / spyder。也许你可以使用类似的东西。

      NONE='\033[00m'
      YELLOW='\033[01;33m'
      
      spy() {
          if [[ "${1}" == "" ]]
          then
              ENV="py36env"
          else 
              ENV=${1}
          fi
      
          source activate ${ENV} #enter env
          echo -e "${YELLOW}CURRENT ENVIRONMENT: ${ENV} ${NONE}"  
          spyder               #open spyder
          echo -e "${YELLOW}EXIT ${ENV} ${NONE}"
          source deactivate    #exit env when spyder is quitted
      }
      

      您现在可以通过在终端中输入“spy XXX”来在env“XXX”中运行spyder。或者通过输入“间谍”来默认。