pip 當前內建命令並不支持升級所有已安裝的Python模塊。
列出當前安裝的包:
pip
list
列出可升級的包:
pip
list --outdate
升級一個包:
pip
install --upgrade requests // mac,linux,unix 在命令前加 sudo -H
升級所有可升級的包:
pip
freeze --local | grep -v '^-e' | cut -d = -f 1 | xargs -n1 pip install -U
for i in `pip list -o --format legacy|awk '{print $1}'` ;
腳本方式1:
import pip from subprocess import call for dist in pip.get_installed_distributions(): call("pip install --upgrade " + dist.project_name, shell=True)
腳本方式2:
import re
import os
pak_re = re.compile(r'[a-zA-Z0-9]+[-]*[a-zA-Z0-9]*')
print("正在獲取需要升級的包列表,需要網絡,可能需要一點時間")
pak_list = os.popen("pip list -o").readlines()
print("已獲取全部需要升級的包,總共", str(len(pak_list)), "個,請耐心等待")
for i in range(len(pak_list)):
pak_list[i] = pak_re.search(pak_list[i])[0] + os.linesep
count = 1
for i in pak_list:
os.system("pip install --upgrade " + i)
print("第" + str(count) + "個包升級完成")
count += 1
print("恭喜!全部升級完成了!")
pip-review方式:
pip install pip-review pip-review --local --interactive
