在Python中,与package.json和"npm install --save"命令等价的是可以轻松保存每个新包的方法。

9 浏览
0 Comments

在Python中,与package.json和"npm install --save"命令等价的是可以轻松保存每个新包的方法。

我一直在寻找一个可以与Python一起使用的软件包管理器。我希望能够在一个文件中列出项目的依赖关系。

例如,Ruby使用Gemfile文件,你可以使用bundle install命令进行安装。

我该如何在Python中实现这一功能?

0
0 Comments

在Python中,有一个很好的相当于npm的工具,叫做pipenv。它可以同时处理虚拟环境和pip依赖,类似于npm。

使用pipenv非常简单。首先安装pipenv:

pip install pipenv

然后可以创建一个新的虚拟环境,并生成一个pipfile文件来记录项目的依赖和其他信息:

pipenv install --three

进入虚拟环境:

pipenv shell

安装新的Python包:

pipenv install requests

运行Python文件:

pipenv run python somefile.py

pipenv的文档可以在这里找到:[https://pipenv.kennethreitz.org/en/latest/](https://pipenv.kennethreitz.org/en/latest/)

除了pipenv,还有其他一些工具也可以管理Python的依赖,比如poetry和pdm。但是需要注意的是,pipenv并不提供npm提供的所有功能,它只管理依赖关系。

0
0 Comments

Python使用pip作为包管理器。pip install命令有一个-r <file>选项,可以从指定的requirements文件中安装包。

安装命令:

pip install -r requirements.txt

示例requirements.txt文件内容:

Foo >= 1.2
PickyThing <1.6,>1.9,!=1.9.6,<2.0a0,==2.4c1
SomethingWhoseVersionIDontCareAbout

完整的格式描述,请参见文档中的Requirements Parsing部分:https://pip.pypa.io/en/stable/user_guide/#requirements-files

0
0 Comments

问题的出现原因:用户想要在Python中找到与package.json和"npm install --save"命令相当的功能和命令,以便轻松保存每个新的包。

解决方法:使用pip工具和requirements.txt文件可以实现类似于package.json和"npm install --save"命令的功能。

pip是Python中相当于Ruby的gems的标准工具。类似于distribute,pip默认使用PyPI包库来解析和下载依赖项。pip可以从一个列出项目依赖项的文件中安装依赖项(按照惯例称为requirements.txt):

pip install -r requirements.txt

也可以使用pip将当前Python环境中的软件包冻结:

pip freeze > requirements.txt

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

另外,使用pip freeze命令可以创建一个列出虚拟环境中安装的所有库的列表。是否有任何方法可以自动排除那些对当前项目工作不必要的库呢?

有一个-l(或--local)选项可能可以实现你的需求。

详情请参考:pip.pypa.io/en/stable/reference/pip_freeze

虽然有点晚,但还是要谢谢你的回答。我认为这个特定的选项应该单独作为一个回答。似乎这是一个非常有用的选项,但没有人知道。

0