写在前面

近期在安装anaconda和pycharm,发现在安装python包时,有两种方式:

  • pip install 包名称
  • conda install 包名称

话不多说:先上概念

  • conda是一种通用包管理系统,是想要构建和管理任何语言的任何类型的软件。因此,它也适用于Python包。
  • Pip代表Pip Installs Packages,是Python的官方认可的包管理器,最常用于安装在Python包索引(PyPI)上发布的包。
  • pip是Python包的通用管理器; conda是一个与语言无关的跨平台环境管理器。

顿时两眼一抹黑,不知道二者之间的区别。网上一通乱搜,找到了一点蛛丝马迹。


一.结论:pip与conda安装对比

1.pip安装不会安装所有的依赖项只会安装部分依赖项,而conda会安装全部;
2.pip与conda不会重复安装已经安装的依赖。
3.pip不会告诉你都安装了什么,conda会
4.pip安装的内容不会显示在anaconda navigation的环境中,conda会。
5.conda下载安装包位置xxxxx\anaconda\pkgs
6.conda list后面如果显示为说明是pip安装,不会显示在环境之中

二.conda安装原理

1.先下载:下载到xxxxxx\anaconda\pkgs
2.再安装,安装到环境文件夹中xxxxxxx\anaconda\envs

三.conda用途

conda最大的用途可能就是管理python的虚拟环境。有以下几个原因:

  • 在我们做项目的过程,不可能一直使用一个版本的python,有python2.X,也有python3.X ;
  • 此外,对于python工具包版本的要求,也会因项目不同而不同。这时我们不可能没做一个项目就来一遍卸载——安装的操作。

因此就需要我们为不同的项目创建虚拟环境,并在每个项目对应的虚拟环境中,安装需要的包,甚至python版本

操作步骤

3.1创建python虚拟环境

在命令行输入以下命令:conda create -n your_env_name python=X.X(2.7、3.6等)

  • your_env_name:虚拟环境的名字,可在anaconda安装目录( …\anaconda3\envs)中找到;
  • python=X.X:为指定的python版本

3.2使用激活(或切换不同python版本)的虚拟环境

  1. 打开命令行输入:python --version # 可以检查当前python的版本
  2. 使用如下命令即可 激活你的虚拟环境(即将python的版本改变)。
Linux:  source activate your_env_name(虚拟环境名称)

Windows: activate your_env_name(虚拟环境名称)
  1. 再使用python --version检查当前python版本是否为想要的。

3.3 对虚拟环境安装额外的包

使用如下命令:
conda install -n your_env_name [package]
即可将package安装到指定虚拟环境

3.4关闭虚拟环境

所谓关闭虚拟环境,即:从当前环境退出使用PATH环境中默认的python版本。

Linux: source deactivate

 Windows: deactivate

3.5删除虚拟环境

conda remove -n your_env_name(虚拟环境名称) --all
conda remove --name your_env_name  package_name  # 删除环境中的某个包

四 conda常用命令

  • conda list :查看安装了哪些包。
  • conda env list 或 conda info -e :查看当前存在哪些虚拟环境
  • conda update conda :检查更新当前conda