windows環(huán)境下, pip更新所有的安裝包
import pip
from subprocess import call
packages = [dist.project_name for dist in pip.get_installed_distributions()]
call("pip install --upgrade " + ' '.join(packages), shell=True)
但是有些包更新不了, 單獨(dú)更新時(shí)出現(xiàn)錯(cuò)誤
Cannot uninstall 'scikit-learn'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
解決方法: 修改命令pip install -U scikit-learn
為pip install -U --ignore-installed scikit-learn
因此, 更新所有的安裝包可修改為
import pip
from subprocess import call
packages = [dist.project_name for dist in pip.get_installed_distributions()]
call("pip install --upgrade --ignore-installed " + ' '.join(packages), shell=True)
如果pip版本過(guò)高, 運(yùn)行會(huì)出現(xiàn)錯(cuò)誤
AttributeError: module 'pip' has no attribute 'get_installed_distributions'
可以嘗試下面這種方法
pip install pip-review
pip-review --local --interactive
其它
更新pip: python -m pip install --upgrade pip