我有一个requirement.txt 文件,其中包含要安装的python 包列表。其中一个包是psycopg2==2.6.2我需要将此包更新为psycopg2==2.7. 我尝试通过安装pip3 install psycopg2但它不影响requirement.txt文件。你能指出我正确的方向吗?
正如您所发现的,pip 不会更新需求文件。因此,您可能想要使用的工作流程是:
pip3 install -U -r requirements.txt
如果您熟悉类似的工具,npm可以更新目录文件中的版本,那么您可能对使用pipelinev感兴趣,它可以为您管理依赖项和虚拟环境,就像这样npm做一样。
如果您不知道软件包的最新版本,请使用 pip 来确定:
$ pip list --outdated | grep psycopg2
psycopg2 (2.7.3.2) - Latest: 2.7.4 [wheel]
Run Code Online (Sandbox Code Playgroud)
请注意,运行pip3 install psycopg2不尊重requirements.txt文件。要升级此软件包,您需要使用-U选项:
pip3 install -U psycopg2
Run Code Online (Sandbox Code Playgroud)
这是以下内容的简写:
pip3 install --upgrade psycopg2
Run Code Online (Sandbox Code Playgroud)
之后,您可以requirements.txt使用以下命令更新您的:
pip freeze > requirements.txt
Run Code Online (Sandbox Code Playgroud)
如果您正在寻找requirements.txt在升级包/包后自动更新文件的解决方案,您可以使用pip-upgrader.
安装:
pip install pip-upgrader
Run Code Online (Sandbox Code Playgroud)
用法:
pip-upgrade
Run Code Online (Sandbox Code Playgroud)
上述命令自动发现需求文件并提示选择升级。您还可以指定需求文件的路径或/和指定要升级的包:
pip-upgrade /path/to/requirements.txt -p psycopg2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5795 次 |
| 最近记录: |