文档章节

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

摩云飞
 摩云飞
发布于 2012/11/10 15:32
字数 520
阅读 302
收藏 9

      刚开始学习 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

本文转载自:http://jiayanjujyj.iteye.com/blog/1409819

摩云飞
粉丝 375
博文 534
码字总数 952694
作品 0
徐汇
程序员
私信 提问
Python管理工具:setuptools和pip的使用详解

Python包管理工具简介 setuptools setuptools管理Python的第三方包,将包安装到site-package下,安装的包后缀一般为.egg,实际为ZIP格式。默认从 http://pypi.python.org/pypi 下载包,能够解...

问题终结者
02/24
49
0
PHP 败给 Python 的十大理由

作者 | myTectra,一家位于班加罗尔的技能开发公司。 译者 | 弯月 责编 | 郭芮 出品 | CSDN(ID:CSDNnews) 以下为译文: 在过去的两年中,Python一直呈急剧上升的趋势。在后台开发中,PHP...

CSDN资讯
03/09
0
0
Pipenv管理Python项目

简介 Pipenv,它的项目简介为 Python Development Workflow for Humans,是 Python 著名的 requests 库作者 kennethreitz 写的一个包管理工具,它可以为我们的项目自动创建和管理虚拟环境并非...

编程老陆
2018/12/30
51
0
为什么 Python 开发人员应该使用 Pipenv

只用了一年, Pipenv 就变成了管理软件包依赖关系的 Python 官方推荐资源。 Pipenv 是由 Kenneth Reitz 在一年多前创建的“面向开发者而生的 Python 开发工作流”,它已经成为管理软件包依赖...

07%
2018/07/07
0
0
PyCon 2018 之 Python 未来的依赖管理工具 pipenv

0x00 前言 PyCon 2018 有很多精彩的演讲,今天的文章里,介绍一下 K 神的演讲 『Python 未来的包管理工具 pipenv』 Kenneth Reitz 出品,必属精品。 0x01 Python packaging 进化历史 『上古时...

iTwocucao
2018/05/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Nginx 快速安装详解

一、Nginx Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамбле...

网络小虾米
31分钟前
4
0
技术分享 | slave_relay_log_info 表认知的一些展开

作者:胡呈清 slave_relay_log_info 表是这样的: mysql> select * from mysql.slave_relay_log_info\G *************************** 1. row *************************** Number_of_lin......

爱可生
34分钟前
3
0
nginx配置http访问自动跳转到https

server {listen 80;server_name www.域名.com;rewrite ^(.*) https://$server_name$1 permanent;}server {listen 443;server_name www.域名.com;root /home/www;ssl on;......

很好亦平凡ms
34分钟前
6
0
SpreadJS:一款中国研发的类Excel开发工具,功能涵盖Excel的 95% 以上

Excel 作为一款深受用户喜爱的电子表格工具,借助其直观的界面、出色的计算性能、数据分析和图表,已经成为数据统计领域不可或缺的软件之一。 基于Excel对数据处理与分析的卓越表现,把Excel...

葡萄城技术团队
34分钟前
4
0
用javafx框架tornadofx做了个天气预报的程序

class WeatherApp : App(WeatherView::class)class WeatherView : View("十五天天气预报") { val weatherVM: WeatherViewModel by inject() val controller: WeatherController by......

oschina4cyy
38分钟前
4
1

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部