首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python有包/模块管理系统吗?

Python有包/模块管理系统吗?
EN

Stack Overflow用户
提问于 2010-03-13 00:29:17
回答 13查看 110.9K关注 0票数 146

Python是否有包/模块管理系统,类似于Ruby在可以执行gem install packagename的地方拥有rubygems

http://docs.python.org/install/index.html上,我只看到对python setup.py install的引用,但这要求您首先找到包。

EN

回答 13

Stack Overflow用户

回答已采纳

发布于 2012-11-18 23:27:38

最近的进展

2014年3月:好消息!Python 3.4和Pip一起出品。Pip长期以来一直是Python事实上的标准包管理器。您可以像这样安装一个包裹

代码语言:javascript
复制
pip install httpie

哇嘿!这是所有Python版本中最好的特性。它使每个人都能利用社区丰富的图书馆。由于设置的困难,新手不再被排除在使用社区库之外。

--然而,--仍然有许多令人失望的地方--它的打包经验。累积起来,它们使Python非常不受新手欢迎。还有,长期忽视的历史。从Python2.0到Python3.3,有14年没有随包管理器一起发布,这对社区造成了损害。我在下面对这两个问题都作了描述。

突出的挫折

重要的是要理解,虽然有经验的用户能够克服这些挫折,但对于刚接触Python的人来说,它们是很大的障碍。事实上,困难和普遍的用户不友好很可能会阻止他们中的许多人。

PyPI网站会起反作用。

使用包管理器的每种语言都有一个官方(或准官方)存储库,供社区下载和发布包。Python有,PyPI。https://pypi.python.org/pypi

让我们比较一下它的页面与RubyGems和Npm ()的页面。

  1. https://rubygems.org/gems/rails RubyGems页面rails
  2. https://www.npmjs.org/package/express express的Npm页面
  3. https://pypi.python.org/pypi/simplejson/ PyPI页面simplejson

您将看到RubyGems和Npm页面都是以包的一行描述开始,然后是大型友好说明如何安装它。

同时,任何天真浏览PyPI的不幸的Python用户都会遭遇不幸。在https://pypi.python.org/pypi/simplejson/上,他们找不到这样有帮助的指令。然而,有一个大的绿色“下载”链接。遵循它并不是不合理的。啊哈,他们点击!他们的浏览器下载一个.tar.gz文件。许多Windows用户甚至无法打开它,但如果他们坚持下去,最终可能会提取它,然后运行setup.py,并最终在Google setup.py install的帮助下运行。有些人会放弃并重新发明轮子。

当然,所有这些都是错误的。安装软件包的最简单方法是使用Pip命令。但PyPI连皮普都没提过。相反,它使他们走上了一条古老而乏味的道路。

错误:找不到vcvarsall.bat

Numpy是Python最流行的库之一。尝试用Pip安装它,您会得到以下神秘的错误消息:

错误:找不到vcvarsall.bat

试图修复这个问题是堆栈溢出中最流行的问题之一:"错误:找不到vcvarsall.bat

很少有人能成功。

作为比较,在相同的情况下,Ruby打印了这条消息,它解释了发生了什么以及如何修复它:

请更新您的路径以包含构建工具或从DevKit下载http://rubyinstaller.org/downloads,并按照http://github.com/oneclick/rubyinstaller/wiki/Development-Kit的说明进行操作。

发布包很难

Ruby配备了功能齐全的软件包管理器,Gem (自2007年起)和Npm (自2011年起),并培育了以GitHub为中心的共享社区。Npm使发布包和安装它们一样容易,它已经有了64k包。RubyGems列出了72k包。值得尊敬的package索引列出了只有41 k

历史

面对"包括电池“的座右铭,Python在2014年之前一直没有一个软件包管理器。

直到Pip,事实上的标准是命令easy_install。令人遗憾的是,这是不够的。未发出卸载软件包的命令。

Pip是一个巨大的进步。它具有鲁比宝石的大部分特征。不幸的是,Pip一直--直到最近--具有讽刺意味的是很难安装。实际上,这个问题仍然是Stack溢出的顶级Python问题:"如何在Windows上安装pip?

票数 214
EN

Stack Overflow用户

发布于 2010-03-13 00:33:40

为了提供一个对比,还有pip

票数 63
EN

Stack Overflow用户

发布于 2012-09-02 09:13:00

Package (PyPI)似乎是标准的:

  • 若要安装软件包:pip install MyProject
  • 更新a package pip install --upgrade MyProject
  • 修复包pip install MyProject==1.0的版本

您可以按以下方式安装包管理器:

代码语言:javascript
复制
curl -O http://python-distribute.org/distribute_setup.py
python distribute_setup.py
easy_install pip

参考文献:

  • http://guide.python-distribute.org/
  • http://pypi.python.org/pypi/distribute
票数 63
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2436731

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档