anaconda安装及使用
一、简介
1.概述
Anaconda就是可以便捷获取包且对包能够进行管理,包括了python和很多常见的软件库和一个包管理器conda。常见的科学计算类的库都包含在里面了,使得安装比常规python安装要容易,同时对环境可以统一管理的发行版本
Anaconda是专注于数据分析的Python发行版本,包含了conda、Python等190多个科学包及其依赖项
2.特点
- 开源
- 安装过程简单
- 高性能使用Python和R语言
- 免费的社区支持
3.与virtualenv的对比
- anaconda是一个包含180+的科学包及其依赖项的发行版本。可以创建一个独立的Python环境,其包含的科学包包括:conda, numpy, scipy, ipython notebook等
- virtualenv用于创建一个独立的Python环境的工具,新环境中需要手动安装需要的三方包
4.pip与conda比较
(1)依赖项检查
-
pip
不一定会展示所需其他依赖包
安装包时或许会直接忽略依赖项而安装,仅在结果中提示错误
-
conda
列出所需其他依赖包
安装包时自动安装其依赖项
可以便捷地在包的不同版本中自由切换
(2)环境管理
- pip:维护多个环境难度较大
- conda:比较方便地在不同环境之间进行切换,环境管理较为简单
(3)对系统自带的Python的影响
- pip:在系统自带Python中包的更新/回退版本/卸载将影响其他程序
- conda:不会影响系统自带Python
(4)适用语言
-
pip:仅适用于Python
-
conda:适用于Python, R, Ruby, Lua, Scala, Java, JavaScript, C/C++, FORTRA,conda结合了pip和virtualenv的功能
二、安装
采用默认步骤即可
三、管理环境
打开Anaconda Prompt进行操作
1.创建新环境
命令:conda create --name <env_name> <package_names>
说明:默认情况下,新创建的环境将会被保存在/Users/<user_name>/anaconda3/env
目录下。其中,<user_name>
为当前用户的用户名
-
env_name
:即创建的环境名,建议以英文命名,且不加空格,名称两边不加尖括号"<>" -
package_names
:即安装在环境中的包名,名称两边不加尖括号"<>"- 如果要安装指定的版本号,则只需要在包名后面以
=
和版本号的形式执行。如:conda create --name env1 python=2.7
,即创建一个名为"python2"的环境,环境中安装版本为2.7的python - 如果要在新创建的环境中创建多个包,则直接在
<package_names>
后以空格隔开,添加多个包名即可。如:conda create --name env2 python=3.7 numpy pandas
,即创建一个名为"python3"的环境,环境中安装版本为3.7的python,同时也安装了numpy和pandas
- 如果要安装指定的版本号,则只需要在包名后面以
-
--name
:可以替换为-n
2.切换环境
Linux&macOS:conda activate <env_name>
windows:activate <env_name>
说明:
- 如果创建环境后安装Python时没有指定Python的版本,那么将会安装与Anaconda版本相同的Python版本,即如果安装Anaconda第2版,则会自动安装Python 2.x;如果安装Anaconda第3版,则会自动安装Python 3.x
- 当成功切换环境之后,在该行行首将以“(env_name)”或“[env_name]”开头。其中,“env_name”为切换到的环境名
3.退出环境至物理环境
Linux&macOS:conda deactivate
windows:deactivate
4.显示已创建环境
conda info --envs
或conda info -e
或conda env list
说明:结果中星号“*”所在行即为当前所在环境
5.复制环境
命令:conda create --name <new_env_name> --clone <copied_env_name>
copied_env_name
:即为被复制/克隆环境名,环境名两边不加尖括号“<>”
new_env_name
:即为复制之后新环境的名称,环境名两边不加尖括号“<>”
6.删除环境
命令:conda remove --name <env_name> --all
四、包管理
1.获取当前环境中已安装的包信息
conda list
2.查找可供安装的包版本
- 精确查找:
conda search --full -name <package_full_name>
–full-name:为精确查找的参数
<package_full_name>:是被查找的包名 - 模糊查找:
conda search <text>
< text > :是查找含有此字段的包名
3.安装包
- 在当前环境中安装包:
conda install <package_name>
- 指定版本号:
conda install <package_name>=version
- 在指定环境中安装包:
conda install --name <env_name> <package_name>
- 使用pip安装包:
pip install <package_name>
说明:当使用conda install无法进行安装时,可以使用pip进行安装
注意:- pip只是包管理器,无法对环境进行啊管理。因此如果想要在指定环境中使用pip命令进行安装包,则需要先切换到指定环境中,再使用pip命令安装包
- pip无法更新Python,因为pip并不将Python视为包
- pip可以安装一些conda无法安装的包;conda也可以安装一些pip无法安装的包。因此当一种命令无法安装包时,可以尝试另一种命令
4.从Anaconda.org安装包
- 说明:当使用conda install无法进行安装时,可以考虑从Anaconda.org中获取安装包的命令,并进行安装
- 浏览器中输入http://anaconda.org
5.卸载包
- 卸载当前环境中的包:
conda remove <package_name>
- 卸载指定环境中的包:
conda remove --name <env_name> <package_name>
6.更新包
- 更新指定包:
conda [update|upgrade] <package_name>
说明:更新多个指定包,则包名以空格隔开,向后排列
如:conda update pandas numpy matplotlib - 更新所有包:`conda [update|upgrade] --all
说明:在安装Anaconda之后执行上述命令更新Anaconda中的所有包至最新版本