首页 > 后端开发 > Python教程 > 如何使用 Pip 同时升级所有 Python 包?

如何使用 Pip 同时升级所有 Python 包?

Barbara Streisand
发布: 2024-11-09 12:58:02
原创
575 人浏览过

How to Upgrade All Python Packages Simultaneously with Pip?

使用 Pip 同时升级所有 Python 包

Pip 是流行的 Python 包管理器,允许您管理和安装 Python 包项目。虽然 pip 提供了用于安装和更新单个包的各种命令,但没有内置标志可以一次更新所有包。但是,通过一些巧妙的命令,您可以实现此功能。

从 pip 版本 22.3 开始,引入了一项新功能,该功能在使用某些标志时禁用内置 pip 版本检查。此功能使您能够使用以下命令获取 JSON 格式的过时包列表:

pip --disable-pip-version-check list --outdated --format=json
登录后复制

要从 JSON 输出中提取包名称并使用 pip 升级它们,您可以使用以下 Python命令:

pip --disable-pip-version-check list --outdated --format=json | python -c "import json, sys; print('\n'.join([x['name'] for x in json.load(sys.stdin)]))" | xargs -n1 pip install -U
登录后复制

如果您使用的是旧版本的 pip(低于 22.3),您可以使用此替代方案命令:

pip list --outdated --format=freeze | grep -v '^\-e' | cut -d = -f 1  | xargs -n1 pip install -U
登录后复制

对于更旧版本的 pip,您可以使用以下命令:

pip freeze --local | grep -v '^\-e' | cut -d = -f 1  | xargs -n1 pip install -U
登录后复制

注 1: grep 命令不包括可编辑的包定义(以 -e 开头),按照 @jawache 的建议。

注意2: xargs 的 -n1 标志可防止进程在更新一个包失败时停止,感谢 @andsens。

可以自由修改此命令以满足您的需要,但其主要目的是提供一种快速简单的方法来使用 pip 升级所有已安装的 Python 包。

以上是如何使用 Pip 同时升级所有 Python 包?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板