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批量修改文件后缀示例代码分享
Dec 24 Python
python实现得到一个给定类的虚函数
Sep 28 Python
Python外星人入侵游戏编程完整版
Mar 30 Python
python中类和实例如何绑定属性与方法示例详解
Aug 18 Python
基于Django的python验证码(实例讲解)
Oct 23 Python
PyTorch 1.0 正式版已经发布了
Dec 13 Python
Python实现的大数据分析操作系统日志功能示例
Feb 11 Python
Jupyter notebook快速入门教程(推荐)
May 18 Python
python爬虫把url链接编码成gbk2312格式过程解析
Jun 08 Python
Python同时处理多个异常的方法
Jul 28 Python
用Python提取PDF表格的方法
Apr 11 Python
教你利用python实现企业微信发送消息
May 23 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水印
2007/03/16 PHP
PHP 面向对象 PHP5 中的常量
2010/05/05 PHP
phplot生成图片类用法详解
2015/01/06 PHP
php获取文件后缀的9种方法
2016/03/22 PHP
PHP网站自动化配置的实现方法(必看)
2017/05/27 PHP
javascript与asp.net(c#)互相调用方法
2009/12/13 Javascript
基于jQuery的消息提示插件之旅 DivAlert(三)
2010/04/01 Javascript
jQuery之浮动窗口实现代码(两种方法)
2010/09/08 Javascript
浅谈js的url解析函数封装
2016/06/28 Javascript
基于vue.js实现图片轮播效果
2016/12/01 Javascript
javascript 正则表达式去空行方法
2017/01/24 Javascript
详解如何使用vue-cli脚手架搭建Vue.js项目
2017/05/19 Javascript
基于react框架使用的一些细节要点的思考
2017/05/31 Javascript
JS对象与json字符串相互转换实现方法示例
2018/06/14 Javascript
vue自定义一个v-model的实现代码
2018/06/21 Javascript
微信小程序项目总结之记账小程序功能的实现(包括后端)
2019/08/20 Javascript
[42:32]DOTA2上海特级锦标赛B组资格赛#2 Fnatic VS Spirit第二局
2016/02/27 DOTA
Python中下划线的使用方法
2015/03/27 Python
python创建和删除目录的方法
2015/04/29 Python
Python数据可视化正态分布简单分析及实现代码
2017/12/04 Python
python实现随机调用一个浏览器打开网页
2018/04/21 Python
Python利用openpyxl库遍历Sheet的实例
2018/05/03 Python
Python中return self的用法详解
2018/07/27 Python
在pycharm 中添加运行参数的操作方法
2019/01/19 Python
css3 伪元素和伪类选择器详解
2014/09/04 HTML / CSS
一款利用纯css3实现的360度翻转按钮的实例教程
2014/11/05 HTML / CSS
美国在线自行车商店:Jenson USA
2018/05/22 全球购物
纽约海:Sea New York
2018/11/04 全球购物
英国的领先快速时尚零售商:In The Style
2019/03/25 全球购物
27个经典Linux面试题及答案,你知道几个?
2013/01/10 面试题
治超工作实施方案
2014/05/04 职场文书
高效课堂标语
2014/06/26 职场文书
2014国庆节餐厅促销活动策划方案
2014/09/16 职场文书
导游词300字
2015/02/13 职场文书
2016年6月份红领巾广播稿
2015/12/21 职场文书
2016猴年开门红标语口号
2015/12/26 职场文书