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使用代理抓取网站图片(多线程)
Mar 14 Python
举例讲解Python中装饰器的用法
Apr 27 Python
Python使用flask框架操作sqlite3的两种方式
Jan 31 Python
Python数据分析之双色球统计两个红和蓝球哪组合比例高的方法
Feb 03 Python
Python实现的HMacMD5加密算法示例
Apr 03 Python
Python反射和内置方法重写操作详解
Aug 27 Python
Django csrf 验证问题的实现
Oct 09 Python
10 行Python 代码实现 AI 目标检测技术【推荐】
Jun 14 Python
使用python爬取抖音视频列表信息
Jul 15 Python
使用python创建生成动态链接库dll的方法
May 09 Python
基于python实现图片转字符画代码实例
Sep 04 Python
pytorch 预训练模型读取修改相关参数的填坑问题
Jun 05 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和XSS跨站攻击的防范
2007/04/17 PHP
PHP memcache扩展的三种安装方法
2009/04/26 PHP
pdo中使用参数化查询sql
2011/08/11 PHP
PHP实现恶意DDOS攻击避免带宽占用问题方法
2015/05/27 PHP
JavaScript实现删除电脑的关机键
2016/07/26 PHP
PHP面向对象五大原则之里氏替换原则(LSP)详解
2018/04/08 PHP
你需要知道的JavsScript可以做什么?
2007/06/29 Javascript
获取css样式表内样式的js函数currentStyle(IE),defaultView(FF)
2011/02/14 Javascript
jquery实现简单的无缝滚动
2015/04/15 Javascript
浅析nodejs实现Websocket的数据接收与发送
2015/11/19 NodeJs
学习JavaScript设计模式(继承)
2015/11/26 Javascript
Bootstrap图片轮播组件使用实例解析
2016/06/30 Javascript
js实现的光标位置工具函数示例
2016/10/03 Javascript
基于BootstrapValidator的Form表单验证(24)
2016/12/12 Javascript
浅谈Vue的基本应用
2016/12/27 Javascript
微信小程序 监听手势滑动切换页面实例详解
2017/06/15 Javascript
swiper动态改变滑动内容的实现方法
2018/01/17 Javascript
关于vue中 $emit的用法详解
2018/04/12 Javascript
Vue ElementUi同时校验多个表单(巧用new promise)
2018/06/06 Javascript
详解vue为什么要求组件模板只能有一个根元素
2019/07/22 Javascript
小程序中使用css var变量(使js可以动态设置css样式属性)
2020/03/31 Javascript
jQuery实现评论模块
2020/08/19 jQuery
IDEA配置jQuery, $符号不再显示黄色波浪线的问题
2020/10/09 jQuery
Python实现Pig Latin小游戏实例代码
2018/02/02 Python
Python实现基于KNN算法的笔迹识别功能详解
2018/07/09 Python
解决pandas .to_excel不覆盖已有sheet的问题
2018/12/10 Python
Python3中编码与解码之Unicode与bytes的讲解
2019/02/28 Python
pycharm 2018 激活码及破解补丁激活方式
2020/09/21 Python
使用AJAX和Django获取数据的方法实例
2020/10/25 Python
python tkinter实现连连看游戏
2020/11/16 Python
全球高级音频和视频专家:HiDef Lifestyle
2019/08/02 全球购物
《两只鸟蛋》教学反思
2014/02/10 职场文书
企业文化标语大全
2014/06/10 职场文书
法人委托书范本
2014/09/15 职场文书
计划生育工作汇报
2014/10/28 职场文书
Python获取百度热搜的完整代码
2021/04/07 Python