【转载】Python的包管理工具(进化关系)

微笑、不失礼 提交于 2019-12-06 10:19:34

      刚开始学习 Python 时,发现各类文档和 Blog 中使用的包安装方式各不相同,有的使用 easy_install,setuptools,有的使用 pip,distribute,那麽这几个工具有什么关系呢,看下面这个图就明白了。

可以看出 distribute 是 setuptools 的取代,pip 是 easy_install 的取代 

正如使用 easy_install 之前需要安装 setuptools ,pip 的使用同样需要依赖 distribute 的安装。

下面简单的介绍一下:

      Distribute 是对标准库 disutils 模块的增强,我们知道 disutils 主要是用来更加容易的打包和分发包,特别是对其他的包有依赖的包。Distribute 被创建是因为 Setuptools 包不再维护了。

1.安装 Distribute

      可以通过 distribute_setup.py 脚本来安装 Distribute,也可以通过 easy_install,pip,或者源文件来进行安装。不过使用 distribute_setup.py 来安装是最简单和受欢迎的方式。

$ curl -0 http://python-distribute.org/distribute_setup.py
$ sudo python distribute_setup.py

 
2.
安装Pip

      Pip 是安装 Python 包的工具,功能包括:安装包,列出已经安装的包,升级包以及卸载包。

      Pip 是对 easy_install 的取代,提供了和 easy_install 相同的查找包的功能,因此可以使用 easy_install安装的包也同样可以使用 pip 进行安装。

      Pip 的安装可以通过源代码包,easy_install 或者其他脚本。


下面介绍一下各种安装方法:

源代码方式

$ wget http://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz (替换为最新的包)
$ tar xzf pip-1.2.1.tar.gz
$ cd pip-1.2.1
$ python setup.py install

easy_install 方式

$ easy_install pip

get_pip.py 脚本方式

$ curl -0 https://raw.github.com/pypa/pip/master/contrib/get-pip.py
$ sudo python get-pip.py

 

OK, 下面来看一下 Pip 的使用

安装 package

$ pip install Markdown

列出安装的 packages

$ pip freeze

安装特定版本的package

通过使用 ==, >=, <=, >, < 来指定一个版本号。

$ pip install 'Markdown<2.0'
$ pip install 'Markdown>2.0,<2.0.3'

升级包

升级包到当前最新的版本,可以使用 -U 或者 --upgrade

$ pip install -U Markdown

卸载包

$ pip uninstall Markdown

查询包

pip search "Markdown"

 

PS -- 包安装后的 py 文件路径:/usr/local/lib/python2.7/dist-packages

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!