您的位置:首页 > 编程语言 > Python开发

conda-多环境配置

2018-03-05 22:16 97 查看
anaconda 能带你去任何地方,今天带大家一起窥一窥conda的多环境配置。

1. anaconda概述

Anaconda是一个用于科学计算的Python发行版,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。Anaconda利用工具/命令conda来进行package和environment的管理,并且已经包含了Python和相关的配套工具。

这里先解释下conda、anaconda这些概念的差别。conda可以理解为一个工具,也是一个可执行命令,其核心功能是包管理与环境管理。包管理与pip的使用类似,环境管理则允许用户方便地安装不同版本的python并可以快速切换。Anaconda则是一个打包的集合,里面预装好了conda、某个版本的python、众多packages、科学计算工具等等,所以也称为Python的一种发行版。其实还有Miniconda,顾名思义,它只包含最基本的内容——python与conda,以及相关的必须依赖项,对于空间要求严格的用户,Miniconda是一种选择。

进入下文之前,说明一下conda的设计理念——conda将几乎所有的工具、第三方包都当做package对待,甚至包括python和conda自身!因此,conda打破了包管理与环境管理的约束,能非常方便地安装各种版本python、各种package并方便地切换。

2. conda多环境配置

conda的强大之处在于多环境的配置,大家都知道,在python使用中比较头疼的地方就是多环境的使用了,可能运行不同的代码需要不同的环境。conda能轻松的解决这个问题。conda提供env类似于虚拟环境的方法,用户可以先自行配置不同的envs,然后根据不同代码激活不同envs。下面我们将从最熟知的TensorFlow讲起。

2.0 conda的envs

首先我们先看看conda的envs,在命令行输入以下命令。

> conda  info -e

#出现以下结果


aaaa@bbbb:~/TF_Deformable_Net$ conda info -e
# conda environments:
#
tensorflow               /home/aaaa/soft/anaconda2/envs/tensorflow
root                  *  /home/aaaa/soft/anaconda2


这里我已经安装了TensorFlow,所以显示了一个TensorFlow的环境。conda的默认环境就是root。

2.1 TensorFlow安装

TensorFlow安装时我们先建立一个TensorFlow的环境。

# Python 2.7
$ conda create -n tensorflow python=2.7

# Python 3.4
$ conda create -n tensorflow python=3.4

# Python 3.5
$ conda create -n tensorflow python=3.5


其实这样我们就能同时根据不同的python版本,安装多个TensorFlow,==但是要注意环境的名字不同重了==。

# 然后我们激活TensorFlow的环境

> source activate tensorflow

# 这个时候我们which看一下,发现python已经切换到TensorFlow的python

aaaa@bbbb:~$
aaaa@bbbb:~$ which python
/home/aaaa/soft/anaconda2/bin/python
aaaa@bbbb:~$
aaaa@bbbb:~$ source activate tensorflow
(tensorflow) aaaa@bbbb:~$
(tensorflow) aaaa@bbbb:~$
(tensorflow) aaaa@bbbb:~$ which python
/home/aaaa/soft/anaconda2/envs/tensorflow/bin/python
(tensorflow) aaaa@bbbb:~$
(tensorflow) aaaa@bbbb:~$

# 不需要了就退出

> source deactivate tensorflow


==这里我们就可以自动配置不同的虚拟环境,需要哪个就激活哪个==。

3. conda 相关命令

# 查看当前环境下已安装的包
conda list

# 查看某个指定环境的已安装包
conda list -n tensorflow

# 查找package信息
conda search numpy

# 安装package
conda install -n tensorflow numpy
# 如果不用-n指定环境名称,则被安装在当前激活环境
# 也可以通过-c指定通过某个channel安装

# 更新package
conda update -n TensorFlow numpy

# 删除package
conda remove -n TensorFlow numpy

# 删除一个已有环境
conda remove --name tensorflow --all


参考文献

[1] https://www.jianshu.com/p/2f3be7781451#

<个人网页blog已经上线,一大波干货即将来袭:https://faiculty.com/>

/* 版权声明:公开学习资源,只供线上学习,不可转载,如需转载请联系本人 .*/

QQ交流群:451429116
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python