Python有类似RubyGems的软件包/模块管理系统吗?就像在Ruby中可以使用“gem install packagename”一样?
在安装Python模块页面上,我只看到了对python setup.py install
的引用,但这需要您先找到该软件包。
Python有类似RubyGems的软件包/模块管理系统吗?就像在Ruby中可以使用“gem install packagename”一样?
在安装Python模块页面上,我只看到了对python setup.py install
的引用,但这需要您先找到该软件包。
2014年3月: 好消息!Python 3.4附带了Pip。 Pip长期以来一直是Python的事实标准包管理器。 您可以像这样安装一个软件包:
pip install httpie
然而,Python包装体验仍存在一些令人沮丧的问题。总的来说,它们使Python对新手非常不友好。此外,长期忽视(即从Python 2.0到Python 3.3没有提供软件包管理器)对社区造成了伤害。我将两者都描述如下。
重要的是要理解,虽然有经验的用户能够克服这些问题,但它们对于新手来说是重要的障碍。事实上,困难和一般用户不友好可能会阻止他们中的许多人。
每种具有软件包管理器的语言都有一个官方(或准官方)的存储库,供社区下载和发布软件包。 Python拥有Python软件包索引(PyPI)。https://pypi.python.org/pypi
让我们将其页面与RubyGems和Npm(Node软件包管理器)的页面进行比较。
rails
的 RubyGems 页面 express
的 Npm 页面simplejson
的 PyPI 页面您会看到 RubyGems 和 Npm 页面都以一个单行描述该软件包的方式开始,然后提供了详细友好的安装说明。
与此同时,对于那些天真地浏览PyPI的Python用户来说,情况就糟糕了。在https://pypi.python.org/pypi/simplejson/上,他们将找不到任何有用的指示。但是,有一个大大的绿色“下载”链接。跟着它也并非毫无道理。啊哈,他们点了!他们的浏览器下载了一个.tar.gz文件。许多Windows用户甚至无法打开它,但如果他们坚持下去,最终可能会解压缩它,然后运行setup.py,最终在Google的帮助下执行setup.py install
。一些人会放弃,重新发明轮子...尝试修复这个问题是 Stack Overflow 上最受欢迎的问题之一:““error: Unable to find vcvarsall.bat””。很少有人能成功解决。错误:无法找到vcvarsall.bat
为了进行对比,还有pip。
这句话是在讲述与前面提到的技术相对应的一种不同的技术——pip。Python包索引(PyPI)似乎是标准的:
pip install MyProject
pip install --upgrade MyProject
pip install MyProject==1.0
您可以按照以下方式安装包管理器:
curl -O http://python-distribute.org/distribute_setup.py
python distribute_setup.py
easy_install pip
参考资料:
我在其他回答中没有看到MacPorts或Homebrew的提及,但是因为我在Stack Overflow的相关问题中看到了它们的提及,所以我会加上我的两分钱,许多人似乎认为MacPorts不仅是一个通用软件包管理器(截至今天,他们列出了16311个软件包/端口,其中2931个与“python”匹配,尽管只适用于Mac),而且也是一个不错(也许更好)的Python软件包/模块管理器:
"... Mac python开发者使用的模块管理方法是什么?"
pip install <your_favorite_package>
安装Python包。 - Simonechoco install python
choco install pip
在那之后,您可以
pip install pyside
pip install ipython
...