Python3 全自动更新已安装的模块实现


Posted in Python onJanuary 06, 2020

1. 手动操作

1.1. 显示模块

pip list

1.2. 显示过期模块

pip list --outdated

1.3. 安装模块

pip install xxx

1.4. 升级模块

pip install --upgrade xxx

2. 自动操作

手动敲命令升级有点儿麻烦(特别是需要更新的模块比较多时),而我们完全可以用代码简单地实现全自动升级。
代码可以至GitHub下载,也可以复制本文中的代码:

Python3 全自动更新已安装的模块实现

autoUpgradePythonModules.py:

import subprocess
import os

command = "pip list --outdated"

print('正在获取需要升级的模块信息,请稍后...')
print('Getting the information of outdated modules, wait a moment...')
print()

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

#print(outdatelist)
for i in outdatelist:
 i = str(i, encoding='utf-8')
 print(i,end='')
 i = i[:i.find(' ')]
 updatelist.append(i)
 #print('\n', i, len(i))

updatelist = updatelist[2:]
#print(updatelist)

c = 1
total = len(updatelist)
if updatelist :
 for x in updatelist:
  print('\n', c, '/', total, ' upgrading ', x, sep='')
  c += 1
  tempcmd = "pip install --upgrade " + x
  os.system(tempcmd)
 print("所有模块都已更新完毕!!")
 print('All modules have been updated.')
else :
 print("没有模块需要更新!!")
 print('All modules is updated.')
print('请按回车键以退出程序。')
print('Press enter key to quit.')
input()

Windows平台下可以运行下面的脚本,该脚本会自动获取管理员权限并进行更新(安装在C盘或者其他一些特殊的目录下可能需要管理员权限才能更新)。

autoUpgradePythonModules.bat:

@echo off
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
start python autoUpgradePythonModules.py

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python自然语言编码转换模块codecs介绍
Apr 08 Python
python实现图片变亮或者变暗的方法
Jun 01 Python
python 开发的三种运行模式详细介绍
Jan 18 Python
Python制作刷网页流量工具
Apr 23 Python
K-近邻算法的python实现代码分享
Dec 09 Python
Python Django基础二之URL路由系统
Jul 18 Python
利用Python复制文件的9种方法总结
Sep 02 Python
使用ITK-SNAP进行抠图操作并保存mask的实例
Jul 01 Python
深入了解Python enumerate和zip
Jul 16 Python
Python os库常用操作代码汇总
Nov 03 Python
用OpenCV进行年龄和性别检测的实现示例
Jan 29 Python
Python中如何处理常见报错
Jan 18 Python
tensorflow 只恢复部分模型参数的实例
Jan 06 #Python
春节到了 教你使用python来抢票回家
Jan 06 #Python
Tensorflow 自定义loss的情况下初始化部分变量方式
Jan 06 #Python
在flask中使用python-dotenv+flask-cli自定义命令(推荐)
Jan 05 #Python
通过 Python 和 OpenCV 实现目标数量监控
Jan 05 #Python
python中count函数简单用法
Jan 05 #Python
Python猴子补丁知识点总结
Jan 05 #Python
You might like
php统计文件大小,以GB、MB、KB、B输出
2011/05/29 PHP
PHP类中的魔术方法(Magic Method)简明总结
2014/07/08 PHP
YII模块实现绑定二级域名的方法
2014/07/09 PHP
php curl请求信息和返回信息设置代码实例
2015/04/27 PHP
使用PHP下载CSS文件中的所有图片【几行代码即可实现】
2016/12/14 PHP
js中cookie的使用详细分析
2008/05/28 Javascript
jquery显示和隐藏div特效实例
2013/02/27 Javascript
用js代码改变单选框选中状态的简单实例
2013/12/18 Javascript
jQuery中width()方法用法实例
2014/12/24 Javascript
简单介绍JavaScript的变量和数据类型
2015/06/03 Javascript
Web打印解决方案之普通报表打印功能
2016/08/29 Javascript
Angular获取手机验证码实现移动端登录注册功能
2017/05/17 Javascript
ZeroClipboard.js使用一个flash复制多个文本框
2017/06/19 Javascript
vue实例中data使用return包裹的方法
2018/08/27 Javascript
mpvue中使用flyjs全局拦截的实现代码
2018/09/13 Javascript
Node.js在图片模板上生成二维码图片并附带底部文字说明实现详解
2019/08/07 Javascript
js实现跟随鼠标移动的小球
2019/08/26 Javascript
微信小程序修改数组长度的问题的解决
2019/12/17 Javascript
Vue Router的手写实现方法实现
2020/03/02 Javascript
详解Howler.js Web音频播放终极解决方案
2020/08/23 Javascript
[03:46]DOTA2英雄基础教程 维萨吉
2013/12/11 DOTA
一个基于flask的web应用诞生 组织结构调整(7)
2017/04/11 Python
Django原生sql也能使用Paginator分页的示例代码
2017/11/15 Python
python实现合并两个排序的链表
2019/03/03 Python
Python骚操作之动态定义函数
2019/03/26 Python
Python使用正则表达式分割字符串的实现方法
2019/07/16 Python
如何利用Python写个坦克大战
2020/11/18 Python
日本非常有名的内衣丝袜品牌:GUNZE
2017/01/06 全球购物
2014道德模范事迹材料
2014/02/16 职场文书
出国英文推荐信
2014/05/10 职场文书
党员干部一句话承诺
2014/05/30 职场文书
整改落实自查报告
2014/11/05 职场文书
网络营销计划书
2015/01/17 职场文书
《黄道婆》教学反思
2016/02/22 职场文书
申论不会写怎么办?教您掌握这6点思维和原则
2019/07/17 职场文书
MySQL分区表实现按月份归类
2021/11/01 MySQL