Python 相当于 npm 或 rubygems?

新手上路,请多包涵

我一直在寻找可以与 python 一起使用的包管理器。我想在文件中列出项目依赖项。

例如,ruby 使用 Gemfile,您可以在其中使用 bundle install。

我怎样才能在 Python 中实现这一点?

原文由 Dillon Benson 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 410
2 个回答

pip 工具正在成为相当于 Ruby 宝石的标准。

distributepip 使用 PyPI 包存储库(默认情况下)来解析和下载依赖项。

pip 可以从列出项目依赖项的文件中安装依赖项(按照惯例称为 requirements.txt ):

 pip install -r requirements.txt

您也可以使用 pip “冻结”Python 路径上的当前包:

 pip freeze > requirements.txt

当与 virtualenv 包结合使用时,您可以可靠地创建具有项目所需依赖项的项目 Python 环境。

原文由 Barry Wark 发布,翻译遵循 CC BY-SA 4.0 许可协议

匹夫

(我知道这是一个老问题,它已经有了答案,但对于像我这样来这里寻找不同答案的人来说。)

我找到了一个 非常好的 npm 等价物,它叫做 pipenv 。它同时处理 virtualenv 和 pip 要求, 所以它更像 npm。


简单用例

pip install pipenv

然后你可以用第三个版本的 python 创建一个新的 virtualenv,并创建一个 pipfile 来填充你的项目需求和其他东西:

 pipenv install --three

使用您创建的 virtualenv:

 pipenv shell

安装一个新的 python 包:

 pipenv install requests

运行你的 .py 文件就像:

 pipenv run python somefile.py

你可以 在这里 找到它的文档。

原文由 Soorena 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进