如何使用pip升级所有Python包?是否可以一次升级所有Python包pip?注意:官方问题跟踪器上有此功能请求。
3 回答
森栏
TA贡献1810条经验 获得超5个赞
还没有内置标志,但您可以使用
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阻止停止所有内容的标志
料青山看我应如是
TA贡献1772条经验 获得超8个赞
您可以使用以下Python代码。与pip freeze此不同,这不会打印警告和FIXME错误。 对于点数<10.0.1
import pipfrom subprocess import call
packages = [dist.project_name for dist in pip.get_installed_distributions()]call("pip install --upgrade " + ' '.join(packages), shell=True)对于pip> = 10.0.1
import pkg_resourcesfrom subprocess import call
packages = [dist.project_name for dist in pkg_resources.working_set]call("pip install --upgrade " + ' '.join(packages), shell=True)
喵喔喔
TA贡献1735条经验 获得超5个赞
升级所有本地包; 你可以使用pip-review:
$ pip install pip-review $ pip-review --local --interactive
pip-review是一个分叉pip-tools。见pip-tools问题被提到@knedlsepp。pip-review包工作但pip-tools包不再有效。
pip-review自0.5版以来在Windows上运行。
添加回答
举报
0/150
提交
取消
