首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >与` `npm install package --save-dev`对应的pip是什么?

与` `npm install package --save-dev`对应的pip是什么?
EN

Stack Overflow用户
提问于 2013-10-02 19:28:54
回答 9查看 99K关注 0票数 263

在nodejs中,我可以执行npm install package --save-dev将安装的包保存到包中。

如何在Python包管理器pip中实现相同的功能?我想在使用pip install package --save-dev requirements.pip之类的工具安装完包之后,立即将包的名称及其版本保存到requirements.pip中。

EN

回答 9

Stack Overflow用户

发布于 2013-10-02 20:20:04

pip没有等价物。

最好的方法是pip install package && pip freeze > requirements.txt

你可以在他们的documentation page上看到所有可用的选项。

如果它真的困扰您,那么编写一个接受-s参数并自动冻结到您的requirements.txt文件的自定义bash脚本(pips)也不是太难。

编辑1个

自写这篇文章以来,在提供类似于NPM的自动--save-dev选项方面没有任何变化,但是Kenneth Reitz ( requests和更多的作者)发布了更多关于better pip workflow的信息,以更好地处理pip更新。

编辑2

链接自上面的“更好的pip工作流程”文章,现在建议使用pipenv来管理需求和虚拟环境。最近我用了很多次,我想总结一下这个转换是多么的简单:

安装pipenv (在Mac上)

代码语言:javascript
运行
复制
brew install pipenv

pipenv创建并管理它自己的虚拟环境,因此在使用现有requirements.txt__的项目中,安装所有需求(我使用的是Python3.7,但如果不这样做,您可以删除--three )非常简单:

代码语言:javascript
运行
复制
pipenv --three install

激活virtualenv来运行命令也很容易

代码语言:javascript
运行
复制
pipenv shell

安装要求将自动更新PipfilePipfile.lock

代码语言:javascript
运行
复制
pipenv install <package>

也可以更新过期的包

代码语言:javascript
运行
复制
pipenv update

我强烈推荐checking it out,特别是如果来自npm背景,因为它与package.jsonpackage-lock.json有相似的感觉

票数 207
EN

Stack Overflow用户

发布于 2018-03-03 08:31:20

这条简单的线是一个起点。您可以很容易地构建一个bash命令来重用该行中的包。

代码语言:javascript
运行
复制
pip install PACKAGE && pip freeze | grep PACKAGE >> requirements.txt

感谢@devsnd提供了简单的bash函数示例:

代码语言:javascript
运行
复制
function pip-install-save { 
    pip install $1 && pip freeze | grep $1 >> requirements.txt
}

要使用它,只需运行:

代码语言:javascript
运行
复制
pip-install-save some-package
票数 62
EN

Stack Overflow用户

发布于 2017-10-13 16:15:24

我已经创建了一个名为pipm的python包,它包装了实际的pip。所有pip命令都将按原样工作,而且它们将反映在需求文件中。与pip-save (https://github.com/kgritesh/pip-save 5年不活跃)类似的工具不同,我发现它不能使用,它可以处理许多文件和环境(测试、开发、生产等)。它还具有升级所有/任何依赖项的命令。

安装

pipm install pkg-name

作为开发依赖项的安装

pipm install pkg-name --dev

作为测试依赖项的安装

pipm install pkg-name --test

删除

pipm uninstall pkg-name

更新所有依赖项

pipm update

安装需求文件中的所有依赖项

pipm install

包括开发依赖项

pipm install --dev

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19135867

复制
相关文章

相似问题

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