Anaconda的使用

Python易用,但用好却不易,其中比较头疼的就是包管理和Python不同版本的问题,特别是当你使用Windows的时候。为了解决这些问题,有不少发行版的Python,比如WinPython、Anaconda等,这些发行版将python和许多常用的package打包,方便pythoners直接使用,此外,还有virtualenv、pyenv等工具管理虚拟环境。

个人尝试了很多类似的发行版,最终选择了Anaconda,因为其强大而方便的包管理与环境管理的功能。该文主要介绍下Anaconda,对Anaconda的理解,并简要总结下相关的操作。

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并方便地切换。

Anaconda的安装

Anaconda的下载页参见官网下载,Linux、Mac、Windows均支持。

安装时,会发现有两个不同版本的Anaconda,分别对应Python 2.7和Python 3.5,两个版本其实除了这点区别外其他都一样。后面我们会看到,安装哪个版本并不本质,因为通过环境管理,我们可以很方便地切换运行时的Python版本。(由于我常用的Python是2.7和3.4,因此倾向于直接安装Python 2.7对应的Anaconda)

下载后直接按照说明安装即可。这里想提醒一点:尽量按照Anaconda默认的行为安装——不使用root权限,仅为个人安装,安装目录设置在个人主目录下(Windows就无所谓了)。这样的好处是,同一台机器上的不同用户完全可以安装、配置自己的Anaconda,不会互相影响。

对于Mac、Linux系统,Anaconda安装好后,实际上就是在主目录下多了个文件夹(~/anaconda)而已,Windows会写入注册表。安装时,安装程序会把bin目录加入PATH(Linux/Mac写入~/.bashrc,Windows添加到系统变量PATH),这些操作也完全可以自己完成。以Linux/Mac为例,安装完成后设置PATH的操作是

# 将anaconda的bin目录加入PATH,根据版本不同,也可能是~/anaconda3/bin
echo ‘export PATH="~/anaconda2/bin:$PATH"‘ >> ~/.bashrc
# 更新bashrc以立即生效
source ~/.bashrc

1

2

3

4

# 将anaconda的bin目录加入PATH,根据版本不同,也可能是~/anaconda3/bin

echo ‘export PATH="~/anaconda2/bin:$PATH"‘ >> ~/.bashrc

# 更新bashrc以立即生效

source ~/.bashrc

配置好PATH后,可以通过which condaconda --version命令检查是否正确。假如安装的是Python 2.7对应的版本,运行python --versionpython -V可以得到Python 2.7.12 :: Anaconda 4.1.1 (64-bit),也说明该发行版默认的环境是Python 2.7。

Conda的环境管理

Conda的环境管理功能允许我们同时安装若干不同版本的Python,并能自由切换。对于上述安装过程,假设我们采用的是Python 2.7对应的安装包,那么Python 2.7就是默认的环境(默认名字是root,注意这个root不是超级管理员的意思)。

假设我们需要安装Python 3.4,此时,我们需要做的操作如下:

# 创建一个名为python34的环境,指定Python版本是3.4(不用管是3.4.x,conda会为我们自动寻找3.4.x中的最新版本)
conda create --name python34 python=3.4

# 安装好后,使用activate激活某个环境
activate python34 # for Windows
source activate python34 # for Linux & Mac
# 激活后,会发现terminal输入的地方多了python34的字样,实际上,此时系统做的事情就是把默认2.7环境从PATH中去除,再把3.4对应的命令加入PATH

# 此时,再次输入
python --version
# 可以得到`Python 3.4.5 :: Anaconda 4.1.1 (64-bit)`,即系统已经切换到了3.4的环境

# 如果想返回默认的python 2.7环境,运行
deactivate python34 # for Windows
source deactivate python34 # for Linux & Mac

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

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

# 创建一个名为python34的环境,指定Python版本是3.4(不用管是3.4.x,conda会为我们自动寻找3.4.x中的最新版本)

conda create --name python34 python=3.4

# 安装好后,使用activate激活某个环境

activate python34 # for Windows

source activate python34 # for Linux & Mac

# 激活后,会发现terminal输入的地方多了python34的字样,实际上,此时系统做的事情就是把默认2.7环境从PATH中去除,再把3.4对应的命令加入PATH

# 此时,再次输入

python --version

# 可以得到`Python 3.4.5 :: Anaconda 4.1.1 (64-bit)`,即系统已经切换到了3.4的环境

# 如果想返回默认的python 2.7环境,运行

deactivate python34 # for Windows

source deactivate python34 # for Linux & Mac

# 删除一个已有的环境

conda remove --name python34 --all

用户安装的不同python环境都会被放在目录~/anaconda/envs下,可以在命令中运行conda info -e查看已安装的环境,当前被激活的环境会显示有一个星号或者括号。

说明:有些用户可能经常使用python 3.4环境,因此直接把~/anaconda/envs/python34下面的bin或者Scripts加入PATH,去除anaconda对应的那个bin目录。这个办法,怎么说呢,也是可以的,但总觉得不是那么elegant……

如果直接按上面说的这么改PATH,你会发现conda命令又找不到了(当然找不到啦,因为conda在~/anaconda/bin里呢),这时候怎么办呢?方法有二:1. 显式地给出conda的绝对地址 2. 在python34环境中也安装conda工具(推荐)。

Conda的包管理

Conda的包管理就比较好理解了,这部分功能与pip类似。

例如,如果需要安装scipy:

# 安装scipy
conda install scipy
# conda会从从远程搜索scipy的相关信息和依赖项目,对于python 3.4,conda会同时安装numpy和mkl(运算加速的库)

# 查看已经安装的packages
conda list
# 最新版的conda是从site-packages文件夹中搜索已经安装的包,不依赖于pip,因此可以显示出通过各种方式安装的包

1

2

3

4

5

6

7

# 安装scipy

conda install scipy

# conda会从从远程搜索scipy的相关信息和依赖项目,对于python 3.4,conda会同时安装numpy和mkl(运算加速的库)

# 查看已经安装的packages

conda list

# 最新版的conda是从site-packages文件夹中搜索已经安装的包,不依赖于pip,因此可以显示出通过各种方式安装的包

conda的一些常用操作如下:

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

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

# 查找package信息
conda search numpy

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

# 更新package
conda update -n python34 numpy

# 删除package
conda remove -n python34 numpy

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

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

conda list

# 查看某个指定环境的已安装包

conda list -n python34

# 查找package信息

conda search numpy

# 安装package

conda install -n python34 numpy

# 如果不用-n指定环境名称,则被安装在当前活跃环境

# 也可以通过-c指定通过某个channel安装

# 更新package

conda update -n python34 numpy

# 删除package

conda remove -n python34 numpy

前面已经提到,conda将conda、python等都视为package,因此,完全可以使用conda来管理conda和python的版本,例如

# 更新conda,保持conda最新
conda update conda

# 更新anaconda
conda update anaconda

# 更新python
conda update python
# 假设当前环境是python 3.4, conda会将python升级为3.4.x系列的当前最新版本

1

2

3

4

5

6

7

8

9

# 更新conda,保持conda最新

conda update conda

# 更新anaconda

conda update anaconda

# 更新python

conda update python

# 假设当前环境是python 3.4, conda会将python升级为3.4.x系列的当前最新版本

补充:如果创建新的python环境,比如3.4,运行conda create -n python34 python=3.4之后,conda仅安装python 3.4相关的必须项,如python, pip等,如果希望该环境像默认环境那样,安装anaconda集合包,只需要:

# 在当前环境下安装anaconda包集合
conda install anaconda

# 结合创建环境的命令,以上操作可以合并为
conda create -n python34 python=3.4 anaconda
# 也可以不用全部安装,根据需求安装自己需要的package即可

1

2

3

4

5

6

# 在当前环境下安装anaconda包集合

conda install anaconda

# 结合创建环境的命令,以上操作可以合并为

conda create -n python34 python=3.4 anaconda

# 也可以不用全部安装,根据需求安装自己需要的package即可

设置国内镜像

如果需要安装很多packages,你会发现conda下载的速度经常很慢,因为Anaconda.org的服务器在国外。所幸的是,清华TUNA镜像源有Anaconda仓库的镜像,我们将其加入conda的配置即可:

# 添加Anaconda的TUNA镜像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
# TUNA的help中镜像地址加有引号,需要去掉

# 设置搜索时显示通道地址
conda config --set show_channel_urls yes

1

2

3

4

5

6

# 添加Anaconda的TUNA镜像

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

# TUNA的help中镜像地址加有引号,需要去掉

# 设置搜索时显示通道地址

conda config --set show_channel_urls yes

执行完上述命令后,会生成~/.condarc(Linux/Mac)或C:UsersUSER_NAME.condarc文件,记录着我们对conda的配置,直接手动创建、编辑该文件是相同的效果。

Anaconda具有跨平台、包管理、环境管理的特点,因此很适合快速在新的机器上部署Python环境。总结而言,整套安装、配置流程如下:

  • 下载Anaconda、安装
  • 配置PATH(bashrc或环境变量),更改TUNA镜像源
  • 创建所需的不用版本的python环境
  • Just Try!

cheat-sheet 下载:
Conda cheat sheet

参考资料

时间: 2024-10-13 08:32:12

Anaconda的使用的相关文章

在Win10 Anaconda中安装Tensorflow

有需要的朋友可以参考一下 1.安装Anaconda 下载:https://www.continuum.io/downloads,我用的是Python 3.5 下载完以后,安装. 安装完以后,打开Anaconda Prompt,输入清华的仓库镜像,更新包更快: conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --set show_channel_url

Sublime Text 3,有了Anaconda就会如虎添翼

作为Python开发环境的Sublime Text 3,有了Anaconda就会如虎添翼.Anaconda是目前最流行也是最有威力的Python代码提示插件. 操作步骤 1.打开package control菜单,输入install或者直接点击install package命令菜单 2.在新窗口输入Anaconda并点击第一个备选项进行安装.安装完成后会显示messages文档 3.由于插件本身无法知道Python安装的路径,所以需要手动设置Python主程序的位置.(刚安装完插件估计就会提示我

Anaconda多环境多版本python配置指导

Anaconda多环境多版本python配置指导 来自:http://www.jianshu.com/p/d2e15200ee9b 原文地址:http://conda.pydata.org/docs/test-drive.html conda测试指南 在开始这个conda测试之前,你应该已经下载并安装好了Anaconda或者Miniconda注意:在安装之后,你应该关闭并重新打开windows命令行. 一.Conda测试过程: 使用conda.首先我们将要确认你已经安装好了conda 配置环境.

Ubuntu14.04安装Anaconda

Anacoda是管理基于python的科学计算环境的工具,包含了numpy,matplotlib,ipyhton等一系列工具,避免了一个一个工具的安装,非常方便. 安装步骤: 1.官网下载:https://www.continuum.io/downloads/,下载python2版本或者python3版本,32位或者64位也根据自己计算机配置选择. 2.下载好后,终端进入到该下载文件的目录. 如果下载的python3版本,运行: bash Anaconda3-4.3.0-Linux-x86_64

谢烟客---------Linux之深入理解anaconda使用

获取详细的帮助: 官方文档: <Installation Guide> anaconda位置 anaconda命令行 anaconda配置方式 kickstart文件格式 kickstart创建 基于光盘安装linux anaconda位置 光盘.ftp.nfs.httpd.nfs **基于光盘,安装linux,见文未** anaconda命令行 boot: linux [options] options anaconda配置方式 kickstart文件格式 位置:~/anaconda-ks.

pycharm 和 Anaconda 下的 opencv 安装

学习真的切忌三天打鱼两天晒网!! 一开始python下的opencv已经都弄好了,中间电脑坏了一次,好久没有接触这个,就全部都忘完了.深感惋惜. 今天又从新安装了一下opencv.在anaconda下的安装非常的方便,只要把opencv下的一个cv2.pyd文件复制到anaconda下就可以了.具体操作是: 先找到你的opencv路径下的cv2.pyd,------------------D:\Program Files\opencv\build\python\2.7\x64 将cv2.pyd复

在Anaconda中实现多版本Python共存

检查conda版本 在Windows的cmd下输入 conda --version 如图: 其中本机Anaconda自带的Python3.6版本的. 在conda中创建一个名为python27的环境,并下载对应版本的Python2.7 cmd下输入 conda create --name python27 python=2.7 如图: 激活python27 cmd下输入 activate python27 如图: 在python27的环境下下载Spyder cmd下输入 conda instal

python linux安装anaconda

步骤: 1.在清华大学镜像站中下载anaconda版本:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda2-4.2.0-Linux-x86_64.sh 2.终端切换到后缀.sh的anaconda文件的目录 3.执行以下命令: bash [anaconda文件名]

Mac OS X 10.12.5下Anaconda中JupyterNotebook出现&quot;不理解“open location”信息。 (-1708)&quot;错误的解决方法

在更新Mac OS X 10.12.5后,发现当通过Anaconda打开JupyterNotebook时出现了以下错误,而且JupyterNotebook并没有通过浏览器启动 我们退出Anaconda,系统提示是否退出JupyterNotebook,这说明JupyterNotebook已经在8888端口上运行了 我们在浏览器地址栏输入(http://localhost:8888)就可以跳转到JupyterNotebook页面,但此时我们会发现页面要求我们输入密码 但这个密码之前并没有被设置过,尝

使用anaconda安装tensorflow

一开始想使用源码安装,卡死在了bazel上. 后来下载了Anaconda(我使用的Anaconda2-4.3.0-Linux-x86_64.sh) 下面是安装过程 0. 操作系统环境 OS:  Centos6.5 64位 CPU: 4核 MEM: 16G DISK: 100G 1. 直接运行sh脚本,进入控制台../Anaconda2-4.3.0-Linux-x86-64.sh, 2. 在控制台使用如下命令创建anaconda环境    conda create -n tensor python