Anacond的介绍
Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。 因为包含了大量的科学包,Anaconda 的下载文件比较大(约 531 MB),如果只需要某些包,或者需要节省带宽或存储空间,也可以使用Miniconda这个较小的发行版(仅包含conda和 Python)。
Conda是一个开源的包、环境管理器,可以用于在同一个机器上安装不同版本的软件包及其依赖,并能够在不同的环境之间切换
Anaconda包括Conda、Python以及一大堆安装好的工具包,比如:numpy、pandas等
Miniconda包括Conda、Python
Anacond下载
下载地址:Anaconda | Individual Edition
清华镜像下载:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
Anaconda 是跨平台的,有 Windows、macOS、Linux 版本,我们这里以 Windows 版本为例,点击那个 Windows 图标。
我这里选择下载
Python 2.7 version *--Python 2.7 版 *
64-Bit Graphical Installer (564 MB) --64位图形安装程序(564 MB)
当然,你也可以根据自己的实际情况,选择 Python 3.6版的,或者 32-Bit 版本的。
安装包有 564MB,因为网速的关系,下载时间可能会比较长,请耐心等待。我这里下载完成 Anaconda2-5.2.0-Windows-x86_64.exe文件了。
安装 Anaconda
双击下载好的 Anaconda2-5.2.0-Windows-x86_64.exe文件,一路点击点击 Next 即可。
这里来到 Advanced Options 了,所谓的“高级选项”。如果你英文好,有一定背景知识的话,肯定明白这界面上的意思。两个默认就好,第一个是加入环境变量(一定要勾选,不然要自己配置环境变量)第二个是默认使用 Python 2.7,点击“Install”,终于开始安装额。
安装时间根据你的电脑配置而异,电脑配置高,硬盘是固态硬盘,速度就更快。安装过程其实就是把 Anaconda2-5.2.0-Windows-x86_64.exe文件里压缩的各种 dll 啊,py 文件啊,全部写到安装目标文件夹里。
配置环境变量
如果是windows的话需要去 控制面板\系统和安全\系统\高级系统设置\环境变量\用户变量\PATH 中添加 anaconda的安装目录的Scripts文件夹, 比如我的路径是C:\ProgramData\Anaconda2\Scripts, 看个人安装路径不同需要自己调整.
之后就可以打开命令行(最好用管理员模式打开) 输入 conda --version
如果输出conda 4.5.4之类的就说明环境变量设置成功了.
为了避免可能发生的错误, 我们在命令行输入conda upgrade --all 先把所有工具包进行升级
管理虚拟环境
接下来我们就可以用anaconda来创建我们一个个独立的python环境了.接下来的例子都是在命令行操作的,请打开你的命令行吧.
activate
activate 能将我们引入anaconda设定的虚拟环境中, 如果你后面什么参数都不加那么会进入anaconda自带的base环境,
你可以输入python试试, 这样会进入base环境的python解释器, 如果你把原来环境中的python环境去除掉会更能体会到, 这个时候在命令行中使用的已经不是你原来的python而是base环境下的python.而命令行前面也会多一个(base) 说明当前我们处于的是base环境下。
创建自己的虚拟环境
我们当然不满足一个base环境, 我们应该为自己的程序安装单独的虚拟环境.
创建一个名称为python34的虚拟环境并指定python版本为3.4(这里conda会自动找3.4中最新的版本下载)
conda create -n python34 python=3.4
或者conda create --name python34 python=3.4
于是我们就有了一个learn的虚拟环境, 接下来我们切换到这个环境, 一样还是用activae命令 后面加上要切换的环境名称
切换环境
activate learn
如果忘记了名称我们可以先用
conda env list
去查看所有的环境
现在的learn环境除了python自带的一些官方包之外是没有其他包的, 一个比较干净的环境我们可以试试
先输入python打开python解释器然后输入
>>> import requests
会报错找不到requests包, 很正常.接下来我们就要演示如何去安装requests包
exit()
退出python解释器
卸载环境
conda remove --name test --all
- 1
安装第三方包
输入
conda install requests
或者
pip install requests
来安装requests包.
安装完成之后我们再输入python进入解释器并import requests包, 这次一定就是成功的了.
卸载第三方包
那么怎么卸载一个包呢
conda remove requests
或者
pip uninstall requests
就行啦.
更改安装源
安装需要的Python包非常方便,但是官方服务器在国外,下载龟速,国内清华大学提供了Anaconda的镜像仓库,我们把源改为清华大学镜像源
更改方法一:cmd后依次输入下面命令
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
打开C盘用户目录,我这里是
C:\Users\User
找到.condarc文件,里面长这样就成了
ssl_verify: true
channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
- defaults
show_channel_urls: true
更改方法二:打开 .condarc文件,直接简单粗暴的把上面的内容复制进去
查看环境包信息
要查看当前环境中所有安装了的包可以用
conda list
导入导出环境
如果想要导出当前环境的包信息可以用
conda env export > environment.yaml
将包信息存入yaml文件中.
当需要重新创建一个相同的虚拟环境时可以用
conda env create -f environment.yaml
其实命令很简单对不对, 我把一些常用的在下面给出来, 相信自己多打两次就能记住
activate // 切换到base环境
activate learn // 切换到learn环境
conda create -n learn python=3 // 创建一个名为learn的环境并指定python版本为3(的最新版本)
conda env list // 列出conda管理的所有环境
conda list // 列出当前环境的所有包
conda install requests 安装requests包
conda remove requests 卸载requets包
conda remove -n learn --all // 删除learn环境及下属所有包
conda update requests 更新requests包
conda env export > environment.yaml // 导出当前环境的包信息
conda env create -f environment.yaml // 用配置文件创建新的虚拟环境
深入一下
或许你会觉得奇怪为啥anaconda能做这些事, 他的原理到底是什么, 我们来看看anaconda的安装录
这里只截取了一部分, 但是我们和本文章最开头的python环境目录比较一下, 可以发现其实十分的相似, 其实这里就是base环境. 里面有着一个基本的python解释器, lLib里面也有base环境下的各种包文件.
那我们自己创建的环境去哪了呢, 我们可以看见一个envs, 这里就是我们自己创建的各种虚拟环境的入口, 点进去看看
可以发现我们之前创建的learn目录就在下面, 再点进去
这不就是一个标准的python环境目录吗?
这么一看, anaconda所谓的创建虚拟环境其实就是安装了一个真实的python环境, 只不过我们可以通过activate,conda等命令去随意的切换我们当前的python环境, 用不同版本的解释器和不同的包环境去运行python脚本.
与JetBrains PyCharm 连接
在工作环境中我们会集成开发环境去编码, 这里推荐JB公司的PyCharm, 而PyCharm也能很方便的和anaconda的虚拟环境结合
在Setting => Project => Project Interpreter 里面修改 Project Interpreter , 点击齿轮标志再点击Add Local为你某个环境的python.exe解释器就行了
比如你要在learn环境中编写程序, 那么就修改为C:\Users\Administrator\AppData\Local\conda\conda\envs\learn, 可以看到这时候下面的依赖包也变成了learn环境中的包了.接下来我们就可以在pycharm中愉快的编码了。