Anaconda、conda、pip、virtualenv的区别

① Anaconda

Anaconda是一个包含180+的科学包及其依赖项的发行版本。其包含的科学包包括:conda, numpy, scipy, ipython notebook等。

Anaconda具有如下特点:

▪ 开源

▪ 安装过程简单

▪ 高性能使用Python和R语言

▪ 免费的社区支持

其特点的实现主要基于Anaconda拥有的:

▪ conda包

▪ 环境管理器

▪ 1,000+开源库


② conda

conda是包及其依赖项和环境的管理工具。

▪ 适用语言:Python, R, Ruby, Lua, Scala, Java, JavaScript, C/C++, FORTRAN。

▪ 适用平台:Windows, macOS, Linux

▪ 用途:

① 快速安装、运行和升级包及其依赖项。

② 在计算机中便捷地创建、保存、加载和切换环境。

如果你需要的包要求不同版本的Python,你无需切换到不同的环境,因为conda同样是一个环境管理器。仅需要几条命令,你可以创建一个完全独立的环境来运行不同的Python版本,同时继续在你常规的环境中使用你常用的Python版本。——Conda官方网站
▪ conda为Python项目而创造,但可适用于上述的多种语言。

▪ conda包和环境管理器包含于Anaconda的所有版本当中。

③ pip

pip是用于安装和管理软件包的包管理器。

▪ pip编写语言:Python。

▪ Python中默认安装的版本:

① Python 2.7.9及后续版本:默认安装,命令为 pip

② Python 3.4及后续版本:默认安装,命令为 pip3

▪ pip名称的由来:pip采用的是递归缩写进行命名的。其名字被普遍认为来源于2处:

① “Pip installs Packages”(“pip安装包”)

② “Pip installs Python”(“pip安装Python”)

④ virtualenv

virtualenv是用于创建一个独立的Python环境的工具。

▪ 解决问题:

当一个程序需要使用Python 2.7版本,而另一个程序需要使用Python 3.6版本,如何同时使用这两个程序?如果将所有程序都安装在系统下的默认路径,如:/usr/lib/python2.7/site-packages,当不小心升级了本不该升级的程序时,将会对其他的程序造成影响。
如果想要安装程序并在程序运行时对其库或库的版本进行修改,都会导致程序的中断。
在共享主机时,无法在全局 site-packages 目录中安装包。
▪ virtualenv将会为它自己的安装目录创建一个环境,这并不与其他virtualenv环境共享库;同时也可以选择性地不连接已安装的全局库。
 

相关推荐

  1. “==”和“equals”区别

    2024-02-17 06:34:02       41 阅读
  2. == 和 equals 区别

    2024-02-17 06:34:02       35 阅读
  3. #{}和${}区别

    2024-02-17 06:34:02       22 阅读
  4. &&和&区别

    2024-02-17 06:34:02       14 阅读
  5. ==与===区别

    2024-02-17 06:34:02       11 阅读
  6. &与 && 区别

    2024-02-17 06:34:02       9 阅读
  7. TCP/UDP区别

    2024-02-17 06:34:02       8 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-17 06:34:02       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-17 06:34:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-17 06:34:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-17 06:34:02       18 阅读

热门阅读

  1. edge浏览器关闭组织托管

    2024-02-17 06:34:02       35 阅读
  2. re:从0开始的CSS之旅 18. z-index

    2024-02-17 06:34:02       23 阅读
  3. Jenkins打包springboot项目到k8s

    2024-02-17 06:34:02       38 阅读
  4. leetcode77组合 剪枝条件详细解释

    2024-02-17 06:34:02       37 阅读
  5. 【无人机】PIXHAWK、PX4、APM区别

    2024-02-17 06:34:02       38 阅读
  6. 键盘快捷切换K线周期的设计与实现

    2024-02-17 06:34:02       36 阅读
  7. 设计模式之:状态模式(State Pattern)

    2024-02-17 06:34:02       32 阅读