在阅读教程和自述文件时,我经常看到人们在宣传安装带有pip
的python包的广告,即使他们使用的是操作系统,它有一个很好的包管理器,如apt
。然而在现实生活中,我只遇到了那些只能用他们的操作系统包管理器安装东西的人,推断这个包管理器会对所有包都一样,无论是否python。
答案 0 :(得分:7)
Pythonistas通常推荐pip
有两个主要原因。第一个是它是一个包管理器,它几乎可以保证带有Python安装,因此,独立于您使用它的操作系统。这样可以更轻松地提供适用于Windows和OS X的指令,以及您喜欢的Linux。
也许更重要的是,pip
与virtualenv
非常吻合,它允许您轻松拥有多个冲突的包配置并在不破坏全局Python安装的情况下对其进行测试。如果我没记错的话,这是因为pip
本身就是一个Python程序,它会自动在当前的virtualenv
沙箱中运行。 OS级别的包管理器显然不会这样做,因为它不是他们的工作。
另外,正如@Henry在下面指出的那样,只需将您的软件包列在一个地方(PyPI)就可以了,而不是依赖于Debian / Ubuntu / Fedora维护者将它包含在他们的软件包列表中。不太受欢迎的软件包几乎不会进入发行版的软件包列表。
尽管如此,我经常发现安装全局库(例如numpy
)对于apt-get
或您最喜欢的替代方案来说更容易且更少痛苦。