一条 推文 写道:
不要使用 easy_install,除非你喜欢用刀捅自己的脸。使用点子。
为什么使用 pip 而不是 easy_install?问题不 主要在于 PyPI 和包作者 吗?如果作者将垃圾源 tarball(例如:缺少文件,没有 setup.py)上传到 PyPI,那么 pip 和 easy_install 都会失败。除了外观上的差异,为什么 Python 用户(如上面的推文)似乎 更 喜欢 pip 而不是 easy_install?
(假设我们正在讨论由社区维护的 Distribute 包中的 easy_install)
原文由 Sridhar Ratnakumar 发布,翻译遵循 CC BY-SA 4.0 许可协议
这里的许多答案在 2015 年已经过时(尽管 Daniel Roseman 最初接受 的答案不是)。这是目前的情况:
.whl
文件)分发——不仅在 PyPI 上,而且在第三方存储库中,如 Christoph Gohlke 的 Windows 扩展包。pip
可以处理轮子;easy_install
不能。virtualenv
)已经成为一个非常重要和突出的工具(并在 官方文档 中推荐);它们包括pip
开箱即用,但甚至不能与easy_install
一起正常工作。easy_install
的distribute
包。它对setuptools
的改进被合并回setuptools
。尝试安装distribute
只会安装setuptools
。easy_install
本身只是准维护。pip
曾经不如easy_install
从解压的源代码树、从 DVCS 存储库等安装的情况 - 早已不复存在;你可以pip install .
,pip install git+https://
。pip
附带来自 python.org 的官方 Python 2.7 和 3.4+ 包,以及pip
如果您从源代码构建,则默认包含引导程序。pip
作为“首选安装程序”。pip
多年来永远不会出现在easy_install
中。例如,pip
通过构建需求文件然后在每一侧使用单个命令安装它,可以轻松克隆站点包。或者将您的需求文件转换为本地存储库以用于内部开发。等等。据我所知,在 2015 年使用
easy_install
的唯一充分理由是在 OS X 10.5-10.8 中使用苹果预装的 Python 版本的特殊情况。自 10.5 以来,Apple 已经包括easy_install
,但截至 10.10,它们仍然不包括pip
。对于 10.9+,您仍然应该只使用get-pip.py
,但是对于 10.5-10.8,这有一些问题,所以更容易使用sudo easy_install pip
。 (一般来说,easy_install pip
是个坏主意;它只适用于 OS X 10.5-10.8,你想这样做。)此外,10.5-10.8 包括readline
在某种程度上easy_install
知道如何四处走动,但pip
不知道,所以你也想sudo easy_install readline
如果你想升级它。