Anaconda是一个免费开源的Python和R语言的发行版本,用于计算科学(数据科学、机器学习、大数据处理和预测分析),Anaconda致力于简化包管理和部署。Anaconda的包使用软件包管理系统Conda进行管理。超过1200万人使用Anaconda发行版本,而且Anaconda拥有超过1400个适用于Windows、Linux和MacOS的数据科学软件包。python
Anaconda拥有超过1400个软件包其中包含Conda和虚拟环境管理,他们都被包含在Anaconda Navigator中,所以无需去了解独立安装每一个库。支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,能够很方便地解决多版本python并存、切换以及各类第三方包安装问题。Anaconda利用工具/命令conda来进行package和environment的管理,而且已经包含了Python和相关的配套工具。可使用已经包含在Anaconda中的命令conda install或者pip install从Anaconda仓库中安装开源软件包。Pip提供了Conda大部分功能,而且大多数状况下两个能够同时使用。可使用conda build命令构建自定义包,而后经过上传到Anaconda Cloud、PyPI或其余仓库来分享给其余人。web
Anaconda2默认包含Python 2.7,Anaconda3默认包含Python 3.7,可是你能够建立虚拟环境来使用任意版本的Python包。app
这里先解释下conda、anaconda这些概念的差异。conda能够理解为一个工具,也是一个可执行命令,其核心功能是包管理与环境管理。包管理与pip的使用相似,环境管理则容许用户方便地安装不一样版本的python并能够快速切换。Anaconda则是一个打包的集合,里面预装好了conda、某个版本的python、众多packages、科学计算工具等等,因此也称为Python的一种发行版。其实还有Miniconda,顾名思义,它只包含最基本的内容——python与conda,以及相关的必须依赖项,对于空间要求严格的用户,Miniconda是一种选择。机器学习
进入下文以前,说明一下conda的设计理念——conda将几乎全部的工具、第三方包都当作package对待,甚至包括python和conda自身!所以,conda打破了包管理与环境管理的约束,能很是方便地安装各类版本python、各类package并方便地切换。scrapy
Anaconda 附带了一大批经常使用数据科学包,它附带了 conda、Python 和 150 多个科学包及其依赖项。所以你能够当即开始处理数据。函数
Anaconda 是在 conda(一个包管理器和环境管理器)上发展出来的。可使用 conda 来安装、更新 、卸载工具包 ,而且它更关注于数据科学相关的工具包。在安装 anaconda 时就预先集成了像 Numpy、Scipy、 pandas、Scikit-learn 这些在数据分析中经常使用的包。另外值得一提的是,conda 并不单单管理Python的工具包,它也能安装非python的包。好比在新版的 Anaconda 中就能够安装R语言的集成开发环境 Rstudio。工具
在conda中能够创建多个虚拟环境,用于隔离不一样项目所需的不一样版本的工具包,以防止版本上的冲突。对纠结于 Python 版本的同窗们,咱们也能够创建 Python2 和 Python3 两个环境,来分别运行不一样版本的 Python 代码。学习
Anaconda还包含一些功能强大的工具大数据
官网点击Download进入下载页面,选择对应的平台和版本下载,我这里是Anaconda3-2019.03-MacOSX-x86_64.pkg
这个版本ui
下载完成后双击下一步下一步知道安装完成,安装完成后自动会把anaconda的执行文件的路径添加到环境变量中无需手动配置,如何须要手动改变须要自行配置。
# 获取帮助 $ conda --help # 安装完成后验证conda的版本和python的版本等详细信息 $ conda info C:\>conda info active environment : None user config file : C:\Users\Andy\.condarc populated config files : C:\Users\Andy\.condarc conda version : 4.6.12 conda-build version : 3.10.5 python version : 3.6.2.final.0 base environment : D:\software\devapps\anaconda3-5.2.0 (writable) channel URLs : https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/win-64 https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/noarch https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/win-64 https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/noarch https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/win-64 https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/noarch https://repo.anaconda.com/pkgs/main/win-64 https://repo.anaconda.com/pkgs/main/noarch https://repo.anaconda.com/pkgs/free/win-64 https://repo.anaconda.com/pkgs/free/noarch https://repo.anaconda.com/pkgs/r/win-64 https://repo.anaconda.com/pkgs/r/noarch https://repo.anaconda.com/pkgs/msys2/win-64 https://repo.anaconda.com/pkgs/msys2/noarch package cache : D:\software\devapps\anaconda3-5.2.0\pkgs C:\Users\Andy\.conda\pkgs C:\Users\Andy\AppData\Local\conda\conda\pkgs envs directories : D:\software\devapps\anaconda3-5.2.0\envs C:\Users\Andy\.conda\envs C:\Users\Andy\AppData\Local\conda\conda\envs platform : win-64 user-agent : conda/4.6.12 requests/2.21.0 CPython/3.6.2 Windows/10 Windows/10.0.17763 administrator : False netrc file : None offline mode : False C:\> # 列出我本机的全部环境,第一个是本身建立的,后面的是我本身后续建立的 $ conda info -e C:\Users\Andy>conda info -e # conda environments: # base * D:\software\devapps\anaconda3-5.2.0 python27 D:\software\devapps\anaconda3-5.2.0\envs\python27 python36 D:\software\devapps\anaconda3-5.2.0\envs\python36 python37 D:\software\devapps\anaconda3-5.2.0\envs\python37 C:\Users\Andy>
通常来讲 conda 仓库的软件没有 PyPI 更新快和全。因此推荐 conda 只用来建立虚拟环境,包的安装管理仍然使用 pip。
# 列出当前环境下全部安装的 conda 包。 $ conda list # 列举一个指定环境下的全部包 $ conda list -n env_name # 查询库 $ conda search scrapys # 安装库安装时能够指定版本例如:(scrapy=1.5.0) $ conda install scrapy # 为指定环境安装某个包 $ conda install --name target_env_name package_name # 更新安装的库 $ conda update scrapy # 更新指定环境某个包 $ conda update -n target_env_name package_name # 更新全部包 $ conda update --all # 删除已经安装的库也尅用(conda uninstall) $ conda remove scrapy # 删除指定环境某个包 $ conda remove -n target_env_name package_name # 删除没有用的包 $ conda clean -p
# 建立环境,后面的python=3.6是指定python的版本 $ conda create --name env_name python=3.6 # 建立包含某些包的环境(也能够加上版本信息) $ conda create --name env_name python=3.7 numpy scrapy # 激活某个环境 $ activate env_name # 关闭某个环境 $ conda deactivate # 复制某个环境 $ conda create --name new_env_name --clone old_env_name # 删除某个环境 $ conda remove --name env_name --all # 生成须要分享环境的yml文件(须要在虚拟环境中执行) $ conda env export > environment.yml # 别人在本身本地使用yml文件建立虚拟环境 $ conda env create -f environment.yml