如何使用pip升级所有Python包?

如何使用pip升级所有Python包?

是否可以一次升级所有Python包pip

注意:官方问题跟踪器上有此功能请求


慕神8447489
浏览 3841回答 3
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的grep是跳过编辑(“-e”)包的定义,通过@jawache的建议。(是的,你可以取代grep+ cut与sed或awk或perl或......)。如果更新一个包失败-n1,则xargs阻止停止所有内容的标志

料青山看我应如是

您可以使用以下Python代码。与pip freeze此不同,这不会打印警告和FIXME错误。&nbsp;对于点数<10.0.1import&nbsp;pipfrom&nbsp;subprocess&nbsp;import&nbsp;call packages&nbsp;=&nbsp;[dist.project_name&nbsp;for&nbsp;dist&nbsp;in&nbsp;pip.get_installed_distributions()]call("pip&nbsp;install&nbsp;--upgrade&nbsp;"&nbsp;+&nbsp;'&nbsp;'.join(packages),&nbsp;shell=True)对于pip> = 10.0.1import&nbsp;pkg_resourcesfrom&nbsp;subprocess&nbsp;import&nbsp;call packages&nbsp;=&nbsp;[dist.project_name&nbsp;for&nbsp;dist&nbsp;in&nbsp;pkg_resources.working_set]call("pip&nbsp;install&nbsp;--upgrade&nbsp;"&nbsp;+&nbsp;'&nbsp;'.join(packages),&nbsp;shell=True)

喵喔喔

升级所有本地包;&nbsp;你可以使用pip-review:$&nbsp;pip&nbsp;install&nbsp;pip-review $&nbsp;pip-review&nbsp;--local&nbsp;--interactivepip-review是一个分叉pip-tools。见pip-tools问题被提到@knedlsepp。pip-review包工作但pip-tools包不再有效。pip-review自0.5版以来在Windows上运行。
打开App,查看更多内容
随时随地看视频慕课网APP