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中sys.argv参数用法实例分析
May 20 Python
轻松实现python搭建微信公众平台
Feb 16 Python
Python编程之黑板上排列组合,你舍得解开吗
Oct 30 Python
详谈Numpy中数组重塑、合并与拆分方法
Apr 17 Python
python实现雨滴下落到地面效果
Jun 21 Python
python中ASCII码字符与int之间的转换方法
Jul 09 Python
python 实现调用子文件下的模块方法
Dec 07 Python
解决django model修改添加字段报错的问题
Nov 18 Python
pytorch 实现将自己的图片数据处理成可以训练的图片类型
Jan 08 Python
python使用html2text库实现从HTML转markdown的方法详解
Feb 21 Python
Jupyter notebook如何实现指定浏览器打开
May 13 Python
上帝为你开了一扇窗之Tkinter常用函数详解
Jun 02 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
linux iconv方法的使用
2011/10/01 PHP
探讨PHP中OO之静态关键字以及类常量的详解
2013/06/07 PHP
PHP+jQuery 注册模块的改进(三):更新到Smarty3.1
2014/10/14 PHP
PHP 设计模式系列之 specification规格模式
2016/01/10 PHP
PHP检查网站是否宕机的方法示例
2017/07/24 PHP
Aster vs Newbee BO5 第三场2.19
2021/03/10 DOTA
基于jquery的图片懒加载js
2010/06/30 Javascript
再说AutoComplete自动补全之实现原理
2011/11/05 Javascript
基于jquery的图片幻灯展示源码
2012/07/15 Javascript
面向对象设计模式的核心法则
2013/11/10 Javascript
jQuery中.live()方法的用法深入解析
2013/12/30 Javascript
jQuery实现为控件添加水印文字效果(附源码)
2015/12/02 Javascript
jQuery图片加载显示loading效果
2016/11/04 Javascript
jquery获取input type=text中的值的各种方式(总结)
2016/12/02 Javascript
BACKBONE.JS 简单入门范例
2017/10/17 Javascript
JQuery常用选择器功能与用法实例分析
2019/12/23 jQuery
vue-cli4项目开启eslint保存时自动格式问题
2020/07/13 Javascript
html中创建并调用vue组件的几种方法汇总
2020/11/17 Javascript
Python 专题六 局部变量、全局变量global、导入模块变量
2017/03/20 Python
Windows下python3安装tkinter的问题及解决方法
2020/01/06 Python
在ipython notebook中使用argparse方式
2020/04/20 Python
python实现xlwt xlrd 指定条件给excel行添加颜色
2020/07/14 Python
Python实现画图软件功能方法详解
2020/07/28 Python
html5借用repeating-linear-gradient实现一把刻度尺(ruler)
2019/09/09 HTML / CSS
韩国三大免税店之一:THE GRAND 中文免税店
2016/07/21 全球购物
加拿大国民体育购物网站:National Sports
2018/11/04 全球购物
薇姿法国官网:Vichy法国
2021/01/28 全球购物
一个J2EE项目团队的主要人员组成是什么
2012/06/04 面试题
中文系学生自荐信范文
2013/11/13 职场文书
物业管理员岗位职责范文
2013/11/25 职场文书
董事长秘书岗位职责
2013/11/29 职场文书
锦旗标语大全
2014/06/23 职场文书
故意杀人罪辩护词
2015/05/21 职场文书
2015小学师德工作总结
2015/07/21 职场文书
2016年大学生寒假社会实践心得体会
2015/10/09 职场文书
排查并解决Oracle sysaux表空间异常增长
2022/04/20 Oracle