仅列出需求文件中提到的过时的 pip 包

List only outdated pip packages mentioned in requirements file

我可以使用 pip list -o 来获取过时包的列表,但我只想获取特定需求文件中列出的过时包列表。基本上相当于 pip freeze -r requirements.txt 过时的包。

我可以使用 --not-required 但这仍然会列出已安装但未在要求文件中列出的已安装软件包。

在写问题时想出了 bash 片段形式的解决方案:

join -t= \
  <(python -m pip list -o --format=freeze | sort) \
  <(awk -F== '{ print  }' requirements.txt | sort)

使用这个工具:https://github.com/simion/pip-upgrader

您只需执行以下操作:

pip install pip-upgrader
pip-upgrade

然后将以交互方式向您介绍可以在 requirements.txt 中升级的所有软件包。