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实现获取操作系统版本信息方法
Apr 08 Python
Python的Bottle框架的一些使用技巧介绍
Apr 08 Python
python常见排序算法基础教程
Apr 13 Python
将字典转换为DataFrame并进行频次统计的方法
Apr 08 Python
python numpy元素的区间查找方法
Nov 14 Python
Pandas 按索引合并数据集的方法
Nov 15 Python
Python 获取windows桌面路径的5种方法小结
Jul 15 Python
python中的TCP(传输控制协议)用法实例分析
Nov 15 Python
基于python实现蓝牙通信代码实例
Nov 19 Python
Python 私有化操作实例分析
Nov 21 Python
python+adb+monkey实现Rom稳定性测试详解
Apr 23 Python
最简单的matplotlib安装教程(小白)
Jul 28 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
pw的一个放后门的方法分析
2007/10/08 PHP
在PHP中养成7个面向对象的好习惯
2010/01/28 PHP
php自定义urlencode,urldecode函数实例
2015/03/24 PHP
Yii2框架引用bootstrap中日期插件yii2-date-picker的方法
2016/01/09 PHP
PHP数据库表操作的封装类及用法实例详解
2016/07/12 PHP
简单谈谈PHP面向对象之标识对象
2017/06/27 PHP
php微信支付之公众号支付功能
2018/05/30 PHP
Extjs ajax同步请求时post方式参数发送方式
2009/08/05 Javascript
JavaScript DOM 学习第九章 选取范围的介绍
2010/02/19 Javascript
JQuery EasyUI 对话框的使用方法
2010/10/24 Javascript
JavaScript中为什么null==0为false而null大于=0为true(个人研究)
2013/09/16 Javascript
自己动手实现jQuery Callbacks完整功能代码详解
2013/11/25 Javascript
javascript实现的元素拖动函数宿主为浏览器
2014/07/21 Javascript
jQuery中parents()和parent()的区别分析
2014/10/28 Javascript
jQuery实现简单二级下拉菜单
2015/04/12 Javascript
js与jquery正则验证电子邮箱、手机号、邮政编码的方法
2016/07/04 Javascript
浅谈jQuery添加的HTML,JS失效的问题
2016/10/05 Javascript
jQuery使用方法
2017/02/04 Javascript
Windows下Node.js安装及环境配置方法
2017/09/18 Javascript
JS实现点击循环切换显示内容的方法
2017/10/19 Javascript
微信小程序之分享页面如何返回首页的示例
2018/03/28 Javascript
vue.js实现左边导航切换右边内容
2019/10/21 Javascript
[02:30]联想杯DOTA2完美世界全国高校联赛—北京站现场
2015/11/16 DOTA
python脚本作为Windows服务启动代码详解
2018/02/11 Python
基于Python和PyYAML读取yaml配置文件数据
2020/01/13 Python
基于Python爬取爱奇艺资源过程解析
2020/03/02 Python
Python数据正态性检验实现过程
2020/04/18 Python
荷兰包包购物网站:The Little Green Bag
2018/03/17 全球购物
美国在线面料商店:Online Fabric Store
2018/07/26 全球购物
精彩的推荐信范文
2013/11/26 职场文书
土木建筑学生自我评价
2014/01/14 职场文书
设备管理实施方案
2014/05/31 职场文书
群众路线个人剖析材料
2014/10/07 职场文书
烟台的海导游词
2015/02/02 职场文书
用 Python 定义 Schema 并生成 Parquet 文件详情
2021/09/25 Python
oracle重置序列从0开始递增1
2022/02/28 Oracle