Anaconda环境管理
创建环境
创建环境的命令格式如下
conda create -n env_name list of packages。
在这里,-n env_name 设置环境的名称(-n 是指名称),而 list of packages 是要安装在环境中的包的列表。例如,要创建名为 my_env 的环境并在其中安装 numpy,请键入 conda create -n my_env numpy。
进入和退出环境
进入环境
创建了环境后,在 OSX/Linux 上使用以下方式进入环境,my_env是之前创建的环境名称:
source activate my_env
在 Windows 上,使用以下命令:
activate my_env
进入环境后,依然可以用conda list,conda install 等操作对环境内部的包进行管理
退出环境
在 OSX/Linux 上,要离开环境,请键入
source deactivate
在 Windows 上,请使用
deactivate
保存和加载环境
保存环境
共享环境这项功能确实很有用,它能让其他人安装你的代码中使用的所有包,并确保这些包的版本正确。可以使用以下命令来保存环境,保存之前需要进入欲保存的环境:
conda env export > environment.yaml
将包保存为 YAML。第一部分 conda env export 输出环境中的所有包的名称(包括 Python 版本),第二部分>environment.yaml,将环境的内容保存为yaml格式的文档。
yaml用gedit打开后内容如下(这是通过conda create -n env_py2 python=2创建的python2环境)
加载环境
通过以下命令来加载环境(environment.yaml是之前保存的环境文件)
conda env create -f environment.yaml
这会创建一个新环境,而且它具有在 environment.yaml 中列出的同样的库。
列出环境
通过下面的命令可以查看当前已经安装的环境
conda env list
你会看到环境的列表,而且你当前所在环境的旁边会有一个星号。默认的环境(即当你不在环境中时使用的环境)名为 root。
删除环境
如果你不再使用某些环境,可以使用下面的命令删除指定的环境(在这里名为 env_name)。
conda env remove -n env_name
最佳做法
使用环境
对我帮助很大的一点是,我的 Python 2 和 Python 3 具有独立的环境。我使用了 conda create -n py2 python=2 和 conda create -n py3 python=3 创建两个独立的环境,即 py2 和 py3。现在,我的每个 Python 版本都有一个通用环境。在所有这些环境中,我都安装了大多数标准的数据科学包(numpy、scipy、pandas 等)。
共享环境
在 GitHub 上共享代码时,最好同样创建环境文件并将其包括在代码库中。这能让其他人更轻松地安装你的代码的所有依赖项。对于不使用 conda 的人,我通常还会使用 pip freeze(在此处了解详情)将一个 pip requirements.txt 文件包括在内。