美文网首页
开源包管理系统和环境管理系统 Conda

开源包管理系统和环境管理系统 Conda

作者: db5c6ac76caf | 来源:发表于2017-10-31 19:28 被阅读200次

简介

在做 Python 开发时,或许你接触过virtualenv,他可以为不同的环境安装不同的 Python 环境支持。如果你还知道virtualenvwrapper,你会发现它用起来更加方便,它是对virtualenv的封装,可以很方便的创建和管理多个不同的开发环境。关于 virtualenv 和 virtualenvwrapper 的介绍可以参考以下内容:

Linux下使用 virtualenv 虚拟独立 Python 环境

Python 多环境管理扩展 virtualenvwrapper

在 Python 中,还有一个更为强大的环境管理工具,即Conda。Conda 不仅可以管理不同的开发环境,还可以像 pip 一样进行包管理。Virtualenv 与 Conda 的功能功能差别不是很大,个人觉得 Virtualenv 在 Web 开发领域用得多些,Conda 则主要在科学计算环境中比较常用。

Conda 是开源的包管理系统和环境管理系统,可以安装软件包的多个版本和依赖,而且各环境可以很方便的切换。Conda 支持 Linux,OS X 和 Windows 系统。Conda 主要为 Python 程序所创建,但是可以打包和分布任意软件。Conda 有多个版本,包括 Anaconda, Anaconda Server 和 Miniconda。

安装

Conda 的安装可以参考官方文档:http://conda.pydata.org/docs/installation.html,只需下载安装程序安装即可。

这里以在 Linux 下安装miniconda为例, 安装过程中默认会在用户主目录下创建一个 miniconda 的目录,同时会在~/.bash_profile中追加配置。如果要卸载 Miniconda,只需要删除相应配置和文件即可:

rm -rf ~/miniconda ~/.condarc ~/.conda ~/.continuum

安装完成后的 miniconda 目录是 Conda 的默认环境,该默认环境被命名为 root,要激活默认环境可以执行如下命令:

source ~/miniconda/bin/activate root

用户创建的其他环境则被存放在~/miniconda/envs中。

使用

1. 创建一个新环境

使用 conda 创建环境的方法如下:

conda create –name snowflakes ipython biopython

这将创建一个名为snowflakes新环境并存放在~/miniconda/envs/snowflakes中。--name参数用于指定环境名,也可以简写成-n。命令最后可以接上在创建的同时需要一并安装的库和模块,同时还可以指定库或模块的版本。例如创建一个 Python3 环境:

conda create -n bunnies python=3 astroid babel

也可以通过克隆其他环境来创建一个新环境:

conda create –name flowers –clone snowflakes

2. 环境的激活与退出

要激活一个环境可以使用如下命令:

source ~/miniconda2/bin/activate bunnies

在有些电脑上可能需要指定全路径,即:

source ~/miniconda2/bin/activate bunnies

激活成功后在当前 shell 提示符前会加上环境名,像这样:

(bunnies)konghy$[~] => conda --version

conda 4.0.5

要退出当前环境,可以用如下命令:

source deactivate bunnies

3. 包的安装及其管理

安装包用conda install 命令,同时可以指定包的版本,例如:

conda install python=3.5

如果需要安装到指定的环境中,则用如下命令:

conda install –name bunnies python=3.5

当然,在安装 conda 是都会默认安装pip工具,所有同样可以用 pip 来安装依赖包。

列出当前环境中所有的包:

conda list

列出指定环境中所有的包:

conda -n bunnies

查找可安装的软件包:

conda search python

这样 Conda 会做模糊匹配,也就是所有带 “python” 字符的包都会被查找出来,如果只需要查找 python 包,则可用如下命令:

conda search –full-name python

包的更新:

conda update conda python ipython

删除软件包:

conda remove –name bunnies ipython

4. 环境管理

查看环境信息

查看系统中安装的所有环境:

conda info –envs

查看 Conda 环境系统信息:

conda info –system

查看环境系统更加详细的信息:

conda info –all

删除环境:

删除环境中指定的包:

conda remove –name flowers ipython biopython

彻底删除环境:

conda env remove –name flowers

导出环境:

conda env export –name bunnies –file build_bunnies.yml

或者

conda list -e > spec-file.txt

从文件创建环境:

如果是用conda env export --name导出的文件,则可用下列命令创建:

conda env create -f build_bunnies.yml

如果是用conda list -e导出的文件,则用如下方式创建:

conda create –name –file

更新环境:

conda env update –name bunnies –file=environment.yml

相关文章

网友评论

      本文标题:开源包管理系统和环境管理系统 Conda

      本文链接:https://www.haomeiwen.com/subject/euqipxtx.html