pip与apt-get的区别

1. pip与apt-get的区别?

pip 用来安装来自PyPI的python所有的依赖包,并且可以选择安装任何在PyPI上已上传的先前版本的依赖包; apt-get 用来安装软件、更新源、也可以用来更新自Ubuntu的典型依赖包,典型安装即意味着它只是安装(最新发布或最近一个的)单一版本,并且我们不能决定我们要安装的依赖包的版本或选择它之前的版本。

2、pip与apt-get何时使用?
使用 pip 安装的情况:

1、若需要安装python包的特定版本或在virtualenv(虚拟环境中)中安装包或安装只托管PyPI上一个包
2、若要使用旧版本的依赖包时(环境中是新版本),可依托 virtualenv 使用 pip 来安装旧版本的依赖包

 使用apt-get安装的情况:若需要最新版本的python依赖包,你可以直接使用apt-get

3、apt-get与pip如何使用?
apt-get 的使用格式有:
pip与apt-get的区别_第1张图片

pip 的使用格式有:
在这里插入图片描述

  • pip 安装包,一般配合着 虚拟Python环境 (virtualenv) 一起使用,使用虚拟环境的好处:
  • 1、可以不受python library版本问题的影响,根据编程中使用的包版本安装相应版本的包。
    2、能更好方便多个项目的管理,而互不干扰。

在ubuntu服务器下安装包的时候,经常会用到sudo apt-get install 包名 或 sudo pip install 包名,那么两者有什么区别呢?

1.区别
pip用来安装来自PyPI(https://www.python.org/)的python所有的依赖包,并且可以选择安装任何在PyPI上已上传的先前版本的依赖包,个人认为是python相关的包和第三方包以及各种版本;

apt-get可以用来安装软件、更新源、也可以用来更新自Ubuntu(https://launchpad.net/ubuntu)的典型依赖包,典型安装即意味着它只是安装(最新发布的,或最近一个的)单一版本,并且我们不能决定我们要安装的依赖包的版本或选择它之前的版本。
个人认为还是很好区分的:毕竟一个是更新系统级别包,一个是更新一种编程语言级别包(库)。

P.S. 用sudo apt-get的方式安装会直接加入环境变量的,而用sudo pip install的方式安装则不会,这也是用sudo pip install的方式安装ipython和jupyter在终端打不开,只有用sudo su然后在pip install的方式才行,这样也会加入进环境变量。但是这种方式在终端打开python2和python3都是ipython, jupyter ,而不会像sudo apt-get会是ipython2,ipython3的样子,不过jupyter就不知道了Ubuntu下apt-get安装与pip安装的区别~所以如果包需要在终端能打开则用sodu su+pip的超级用户方式,而如果不用则用sodu pip就够了,pip方式不好用了(比如python-tk)才建议用sudo apt-getUbuntu下apt-get安装与pip安装的区别

2.使用
情况是这样的,如果你需要最新版本的python依赖包,你可以直接使用apt-get,在项目突然需要使用旧版本的依赖包时,你就可以使用virtualenvwrapper和pip来使完美得再安装上一个旧版本的依赖包;
你可以根据你的喜好选择你喜欢的安装方式。但是,如果你需要安装python包的特定版本,或在virtualenvwrapper中安装包,或安装只托管PyPI上一个包,此时只有pip会帮你解决这个问题了。否则,如果你不介意安装在系统范围的位置使用apt-get或pip都是ok的;

3.安装及应用
apt-get是可以直接使用的,格式为

$ sudo apt-get install/delete package
$ sudo apt-get -f install #修复安装
$ sudo apt-get dist-upgrade #升级系统
$ sudo apt-get upgrade #更新已安装的包
$ apt-get source package #下载该包的源代码
$ sudo apt-get build-dep package #安装相关的编译环境
$ sudo apt-get clean && sudo apt-get autoclean #清理无用的包

pip需要安装才能使用,配合virtualenvwrapper会锦上添花。安装过程如下(适用Ubuntu 10.10及以上版本),使用格式为:pip install package。

$ sudo apt-get install python-pip python-dev build-essential
$ sudo pip install --upgrade pip
$ sudo pip install --upgrade virtualenv

注:virtualenv是一个python工具,它可以创建一个独立的python环境,这样做的好处是你的python程序运行在这个环境里,不受其它python library的版本问题影响。

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

在UBUNTU系统下,使用python进行语言开发时,在必要时需要安装不同的python包进行扩展。那么,通常用到的两种方式:pip install和ubuntu系统独有的apt-get install有什么区别呢?这里略作记录。

(主要参考:http://askubuntu.com/questions/431780/apt-get-install-vs-pip-install)

pip install的源是pyPI,apt-get 的源是ubuntu仓库。

对于python的包来说,pyPI的源要比ubuntu更多,对于同一个包,

pyPI可以提供更多的版本以供下载。

apt-get 安装的包是系统化的包,在系统内完全安装。

pip install安装的python包,可以只安装在当前工程内

apt-get 和 pip install 中,对于相同python包,命名可能会不同:

apt-get install:对于python2来说,包的名称可能是python-

对于python3来说,包的名称可能是python3-

pip install:直接使用进行下载

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
为Linux配置apt-get的更新源:http://www.linuxdiyf.com/linux/12073.html

Ubuntu 15.04下apt-get安装JDK:http://www.linuxdiyf.com/linux/11669.html

安装软件包方式:sudo apt-get和sudo tasksel有何不同:http://www.linuxdiyf.com/linux/9933.html

使用apt-fast代替apt-get大幅度提升下载速度:http://www.linuxdiyf.com/linux/9905.html

apt-get和apt-cache命令实例展示:http://www.linuxdiyf.com/linux/8765.html

你可能感兴趣的:(python)