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 天前
环境管理系统:Conda(一)
python·conda·环境隔离
北城笑笑1 天前
Python Dev 02 & Tkinter webbrowser 实战,手写第一个 Python 桌面 GUI 小工具
人工智能·python·pip
言乐62 天前
Python:用AES-GCM算法加密链接内容,并生成可分享的加密链接和解密工具
python·django·virtualenv·pygame·tornado
Blockbuater_drug2 天前
Protenix: conda 环境部署、零基础安装
conda·开源模型·字节跳动·v2·蛋白结构预测·protenix
言乐62 天前
Python + NumPy 从零实现的 BP 神经网络(反向传播)脚本模型,包含前向传播、反向传播、训练和预测,并用 XOR 数据做示例
python·django·virtualenv·pygame·tornado
AlfredZhao3 天前
执行新项目 python 脚本前,先用 conda 建一个独立环境
conda
王_teacher4 天前
pycharm 无法将“pip”项识别为 cmdlet、函数、脚本文件或可运行程序的名称
pycharm·pip·pycharm配置·无法将“pip”项识别·无法将pip项识别
THe CHallEnge of THe BrAve7 天前
conda虚拟环境打包离线迁移
conda
zhangzeyuaaa8 天前
深入理解 pip install .:安装当前目录项目的正确姿势
人工智能·python·pip
头茬韭菜10 天前
第 1 篇:「架构鸟瞰与 Memory 初始化」—— 从 pip install 到三个工厂
jvm·架构·pip·mem0