双击更新所有已安装的python模块

    首先声明我是一个升级控。几乎每天会查看一下手机、电脑是否有新的应用需要更新。

        同样,我的python模块也是这样。百度了一下,发现目前还没有人将更新所有模块做成一件命令,但是查到了指引,主要就是两个命令。

        pip list --outdated

        pip install -U xxxx

   当然,如果你只是安装了几个python模块,重复执行几次命令也是可以的,也不会太烦,也不会浪费时间。

        有了这两个命令,足够了。于是写了一个脚本。  

import subprocess

command = "pip list --outdated"

outdatelist = subprocess.Popen (command, stdout=subprocess.PIPE,stderr=subprocess.PIPE, shell = True).stdout.readlines()

updatelist = [x.split("(")[0] for x in outdatelist ]

if updatelist :

print u"您需要更新以下几个模块:"
print updatelist

for x in updatelist:
tempcmd = "pip install -U " + x
print subprocess.Popen (tempcmd, stdout=subprocess.PIPE,stderr=subprocess.PIPE, shell = True).stdout.readlines()

print u"所有模块都已更新完毕!!"

else :
print u"没有模块需要更新!!"

  是不是很简单?

  

原文地址:https://www.cnblogs.com/yicaifeitian/p/4788955.html