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 相关文章推荐
paramiko模块安装和使用(远程登录服务器)
Jan 27 Python
Python Web开发模板引擎优缺点总结
May 06 Python
详解Golang 与python中的字符串反转
Jul 21 Python
利用Python+阿里云实现DDNS动态域名解析的方法
Apr 01 Python
Python 存储字符串时节省空间的方法
Apr 23 Python
一篇文章弄懂Python中所有数组数据类型
Jun 23 Python
django 基于中间件实现限制ip频繁访问过程详解
Jul 30 Python
手写一个python迭代器过程详解
Aug 27 Python
Python线程障碍对象Barrier原理详解
Dec 02 Python
python中的itertools的使用详解
Jan 13 Python
Jupyter notebook快速入门教程(推荐)
May 18 Python
如何利用Python写个坦克大战
Nov 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
第三节--定义一个类
2006/11/16 PHP
php和javascript之间变量的传递实现代码
2012/12/19 PHP
php实现的debug log日志操作类实例
2016/07/12 PHP
thinkphp框架page类与bootstrap分页(美化)
2017/06/25 PHP
Laravel如何使用数据库事务及捕获事务失败后的异常详解
2017/10/23 PHP
js 获取中文拼音,Select自动匹配字母获取值的代码
2009/09/23 Javascript
JavaScript中Math对象方法使用概述
2014/01/02 Javascript
js操作table元素实现表格行列新增、删除技巧总结
2015/11/18 Javascript
在ASP.NET MVC项目中使用RequireJS库的用法示例
2016/02/15 Javascript
JS+CSS3实现超炫的散列画廊特效
2016/07/16 Javascript
JS实现数字格式千分位相互转换方法
2016/08/01 Javascript
微信js-sdk上传与下载图片接口用法示例
2016/10/12 Javascript
JavaScript该如何学习 怎样轻松学习JavaScript
2017/06/12 Javascript
浅谈React和Redux的连接react-redux
2017/12/04 Javascript
Koa2微信公众号开发之本地开发调试环境搭建
2018/05/16 Javascript
Vue实现搜索结果高亮显示关键字
2019/05/28 Javascript
举例讲解如何在Python编程中进行迭代和遍历
2016/01/19 Python
利用Python中SocketServer 实现客户端与服务器间非阻塞通信
2016/12/15 Python
详细解读tornado协程(coroutine)原理
2018/01/15 Python
Python3.5模块的定义、导入、优化操作图文详解
2019/04/27 Python
解决Python计算矩阵乘向量,矩阵乘实数的一些小错误
2019/08/26 Python
python批量处理文件或文件夹
2020/07/28 Python
python 3.74 运行import numpy as np 报错lib\site-packages\numpy\__init__.py
2019/10/06 Python
python获取时间戳的实现示例(10位和13位)
2020/09/23 Python
法国足球商店:Footcenter
2019/07/06 全球购物
在C语言中"指针和数组等价"到底是什么意思?
2014/03/24 面试题
一道SQL面试题
2012/12/31 面试题
小学生读书感言
2014/02/12 职场文书
优秀党员获奖感言
2014/02/18 职场文书
财务管理专业毕业生求职信
2014/06/02 职场文书
新兵入伍心得体会
2014/09/04 职场文书
实验室安全管理制度
2015/08/05 职场文书
职业规划从高考志愿专业选择开始
2019/08/08 职场文书
python Polars库的使用简介
2021/04/21 Python
Vue如何实现组件间通信
2021/05/15 Vue.js
pyqt5蒙版遮罩mask,setmask的使用
2021/06/11 Python