Anaconda使用教程(使用Anaconda配置多python开发环境)
Anaconda使用教程第一弹(使用Anaconda配置多python开发环境)
windows下用python非常的麻烦。所以想要一个包管理的东西,那么Anaconda是非常好的一个管理工具,无论你是想用python2.7还是python3.4。
1.去官网下载Anaconda 下载地址 选择对应的你的系统版本,比如我的是win7-64位,那么我就直接下载win7-64位,同时我下载的是python2.7的版本。其实无论2.7还是3.4你只要下载一个Anaconda就好了。后面会解释为什么。 2.无脑点下一步安装,选择你的安装路径,我本机的安装路径在E:\Program Files\Anaconda2
,然后耐心等待,等到安装完成。 3.win健+R(或者点开始菜单-运行-输入cmd-按回车)打开命令提示符,如下图 4.输入conda --version
查看版本号,显示如下图,得知版本为conda4.2.9,同时也证明你安装成了 5.这个时候,因为我安装的是2.7的Anaconda环境,所以默认的python就是2.7的。不信你在命令行中输入python –version 他出来的就是python2.7.5 有的朋友说,我两个开发环境都需要怎么办呢。这个时候我们就可以再创建一个开发环境。
利用Anaconda做python多开发环境多版本的配置
以下教程会创建两个版本的python开发环境,分别是一个默认的2.7.5和一个3.4
首先你需要熟悉一下Anaconda的基础命令,同时安装的时候如果需要查阅手册命令的,请查看官方文档 。 官方文档有困难的,下面有一部分熟悉命令。本质上就是翻译了官网的Test Drive这个目录下面的文字,你也可以参考下 这里大家可以先理清一个简单的概念,其实你的一个python环境,就是使用命令调用当前目录下的python编译器。不同的版本,你可以理解为在不同文件夹下的不同python版本的编译器。
创建一个除了root分支之外的2.7.×的python环境
1 | # 创建一个名为python27的环境,指定Python版本是2.7(不用管是2.7.x,conda会为我们自动寻找2.7.x中的最新版本) |
静静的按回车等待安装成功。安装成功之后,我们可以到对应的目录查看一下。还记得你最初的Anaconda的安装目录么?这个时候可以去E:\Program Files\Anaconda2\envs
目录下查看,就多了一个python27的目录,说明你就安装好了一个python27的环境。
同理再创建一个3.4.×的python环境
1 | conda create --name python34 python=3.4 |
然后这个时候你就可以继续查看E:\Program Files\Anaconda2\envs
目录下面的文件夹了,应该会多了一个python27
和python34
,那么恭喜你, 成功的安装了两个版本的python开发环境。
查看你现在所在的版本分支:
1 | conda info --e |
在这里你就会看到你所有的python版本,和你现在所在的分支 如上图,你的开放环境中,应该已经有了三个开发环境,分别书root、python27、python34
切换到你所需要的分支
- Linux, OS X:
source activate bunnies
- Windows:
activate bunnies
比如你需要切换到python3.4的版本,那么你如果在windows下就直接运行 activate python34
就好了 切换回root分支
- Linux, OS X:
source deactivate
- Windows:
deactivate
案例:安装beautifulsoup4
以下所有的命令都是在python34这个环境下进行的
1 | #首先你需要切换到python34这个环境下。 |
这个python34的环境报下面没有beautifulsoup4,所以我们想要安装一个
1 | #查找beautifulsoup4的包 |
享受你的py交易吧
熟悉基础命令
1. 管理conda:
Conda既是一个包管理器又是一个环境管理器。你肯定知道包管理器,它可以帮你发现和查看包。但是如果当我们想要安装一个包,但是这个包只支持跟我们目前使用的python不同的版本时。你只需要几行命令,就可以搭建起一个可以运行另外python版本的环境。,这就是conda环境管理器的强大功能。 提示:无论你使用Linux、OS X或者Windows命令行工具,在你的命令行终端conda指令都是一样的,除非有特别说明。
检查conda已经被安装。
为了确保你已经在正确的位置安装好了conda,让我们来检查你是否已经成功安装好了Anaconda。在你的命令行终端窗口,输入如下代码:
1 | conda --version |
Conda会返回你安装Anaconda软件的版本。 提示:如果你看到了错误信息,检查你是否在安装过程中选择了仅为当前用户按安装,并且是否以同样的账户来操作。确保用同样的账户登录安装了之后重新打开命令行终端窗口。
升级当前版本的conda
接下来,让我们通过使用如下update命令来升级conda:
1 | conda update conda |
conda将会比较新旧版本并且告诉你哪一个版本的conda可以被安装。它也会通知你伴随这次升级其它包同时升级的情况。 如果新版本的conda可用,它会提示你输入y进行升级.
1 | proceed ([y]/n)? y |
conda更新到最新版后,我们将进入下一个主题。
2. 管理环境。
现在我们通过创建一些环境来展示conda的环境操作,然后移动它们。
创建并激活一个环境
使用conda create命令,后边跟上你希望用来称呼它的任何名字:
1 | conda create --name snowflake biopython |
这条命令将会给biopython包创建一个新的环境,位置在/envs/snowflakes 小技巧:很多跟在–后边常用的命令选项,可以被略写为一个短线加命令首字母。所以–name选项和-n的作用是一样的。通过conda -h或conda –-help来看大量的缩写。
激活这个新环境
1 | Linux,OS X: source activate snowflakes |
小技巧:新的开发环境会被默认安装在你conda目录下的envs文件目录下。你可以指定一个其他的路径;去通过conda create -h了解更多信息吧。 小技巧:如果我们没有指定安装python的版本,donda会安装我们最初安装conda时所装的那个版本的python。
创建第二个环境
这次让我们来创建并命名一个新环境,然后安装另一个版本的python以及两个包 Astroid 和 Babel。
1 | conda create -n bunnies python=3 Astroid Babel |
这将创建第二个基于python3 ,包含Astroid 和 Babel 包,称为bunnies的新环境,在/envs/bunnies文件夹里。 小技巧:在此同时安装你想在这个环境中运行的包, 小提示:在你创建环境的同时安装好所有你想要的包,在后来依次安装可能会导致依赖性问题(貌似是,不太懂这个术语怎么翻)。 小技巧:你可以在conda create命令后边附加跟多的条件,键入conda create –h 查看更多细节。
列出所有的环境
现在让我们来检查一下截至目前你所安装的环境,使用conda environment info 命令来查看它:
1 | conda info -envis |
你将会看到如下的环境列表: conda environments:
1 | snowflakes * /home/username/miniconda/envs/snowflakes |
确认当前环境
你现在处于哪个环境中呢?snowflakes还是bunnies?想要确定它,输入下面的代码:
1 | conda info -envis |
conda将会显示所有环境的列表,当前环境会显示在一个括号内。
1 | (snowflakes) |
注意:conda有时也会在目前活动的环境前边加上*号。
切换到另一个环境(activate/deactivate)
为了切换到另一个环境,键入下列命令以及所需环境的名字。
1 | Linux,OS X: source activate snowflakes |
如果要从你当前工作环境的路径切换到系统根目录时,键入:
1 | Linux,OS X: source deactivate |
当该环境不再活动时,将不再被提前显示。
复制一个环境
通过克隆来复制一个环境。这儿将通过克隆snowfllakes来创建一个称为flowers的副本。
1 | conda create -n flowers --clone snowflakes |
通过conda info –-envs来检查环境 你现在应该可以看到一个环境列表:flowers, bunnies, and snowflakes.
删除一个环境
如果你不想要这个名为flowers的环境,就按照如下方法移除该环境:
1 | conda remove -n flowers --all |
为了确定这个名为flowers的环境已经被移除,输入以下命令:
1 | conda info -e |
flowers 已经不再在你的环境列表里了,所以我们知道它被删除了。 参考:文/NorthPenguin(简书作者)