zl程序教程

您现在的位置是:首页 >  后端

当前栏目

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

Python管理工具 关系 转载 进化
2023-09-14 08:59:45 时间

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


python虚拟环境(venv、virtualenv)及虚拟环境管理工具(virtualenvwrapper) Python应用开发时,本机的Python环境中安装各种各样的包的话,随着项目的增加,每次运行时都需要处理一下各种不同版本的依赖库,而且python版本也可能使用的不同,这样做很耗时。这就需要虚拟出不同的Python版本的环境,可以让虚拟环境专门为某一个应用而存在,且允许在虚拟环境中安装各种包。而且不影响本机大的python环境,便于开发环境和生产环境的管理。
Python包管理工具之 PDM 大家好,我是小姜。之前讲了一个pipenv和poetry包管理工具,想必大家也和我一样去了解过pipenv所存在问题,所以不是很推荐使用。后来改成了poetry工具,但这个东西对我来说稍微有点麻烦,经常容易打错,虽然可以做成alias的形式。那么今天我给大家推荐一个叫PDM的工具,全称:Python Development Master。它也是非常好用,有兴趣的朋友可以使用一下。
Python包管理工具之poetry 之前讲了一个pipenv包管理工具,这里说另外一个poetry工具,它是一个Python 虚拟环境和依赖管理工具。还提供了打包发布的功能。
Python包管理工具之pipenv 传统的成熟方案中,我们为了避免包版本的管理混乱,通常我们是依赖于当前的Python版本创建一个虚拟环境,并在虚拟环境中使用pip进行包管理。现在有一个好用的工具叫pipenv来帮助我们更方便的管理包。