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 相关文章推荐
Pyramid Mako模板引入helper对象的步骤方法
Nov 27 Python
django通过ajax发起请求返回JSON格式数据的方法
Jun 04 Python
Python卸载模块的方法汇总
Jun 07 Python
浅谈pycharm出现卡顿的解决方法
Dec 03 Python
python无限生成不重复(字母,数字,字符)组合的方法
Dec 04 Python
python自动化测试之异常及日志操作实例分析
Nov 09 Python
Python 获取命令行参数内容及参数个数的实例
Dec 20 Python
Python把图片转化为pdf代码实例
Jul 28 Python
Python远程linux执行命令实现
Nov 11 Python
pip 20.3 新版本发布!即将抛弃 Python 2.x(推荐)
Dec 16 Python
Python insert() / append() 用法 Leetcode实战演示
Mar 31 Python
python基础学习之递归函数知识总结
May 26 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
后宫无数却洁身自好的男主,唐三只爱小舞
2020/03/02 国漫
laravel安装和配置教程
2014/10/29 PHP
PHP结合Vue实现滚动底部加载效果
2017/12/17 PHP
对textarea框的代码调试,而且功能上使用非常方便,酷
2006/06/30 Javascript
javascript GUID生成器实现代码
2009/10/31 Javascript
js 与或运算符 || && 妙用
2009/12/09 Javascript
jQuery实现给页面换肤的方法
2015/05/30 Javascript
JavaScript几种数组去掉重复值的方法推荐
2016/04/12 Javascript
基于BootStrap Metronic开发框架经验小结【八】框架功能总体界面介绍
2016/05/12 Javascript
JS从数组中随机取出几个数组元素的方法
2016/08/02 Javascript
node.js学习之交互式解释器REPL详解
2016/12/08 Javascript
详谈DOM简介及节点、属性、查找节点的方法
2017/11/16 Javascript
vue-router 实现导航守卫(路由卫士)的实例代码
2018/09/02 Javascript
angularJs中ng-model-options设置数据同步的方法
2018/09/30 Javascript
详解如何在vue项目中使用eslint+prettier格式化代码
2018/11/10 Javascript
对layui数据表格动态cols(字段)动态变化详解
2019/10/25 Javascript
[01:03:59]2018DOTA2亚洲邀请赛3月30日 小组赛B组VGJ.T VS Secret
2018/03/31 DOTA
[02:00]DAC2018主宣传片——龙征四海,剑问东方
2018/03/20 DOTA
[49:58]完美世界DOTA2联赛PWL S3 Magma vs DLG 第一场 12.18
2020/12/19 DOTA
python实现2048小游戏
2015/03/30 Python
Python自动重试HTTP连接装饰器
2015/04/28 Python
Python Queue模块详细介绍及实例
2016/12/27 Python
python爬虫之BeautifulSoup 使用select方法详解
2017/10/23 Python
Python cookbook(数据结构与算法)找到最大或最小的N个元素实现方法示例
2018/02/13 Python
python中的文件打开与关闭操作命令介绍
2018/04/26 Python
Python之dict(或对象)与json之间的互相转化实例
2018/06/05 Python
Python+OpenCV目标跟踪实现基本的运动检测
2018/07/10 Python
python with (as)语句实例详解
2020/02/04 Python
Smallable意大利家庭概念店:设计师童装及家居装饰
2018/01/08 全球购物
英国最大的天然和有机产品在线零售商之一:Big Green Smile
2020/05/06 全球购物
小学毕业感言300字
2014/02/19 职场文书
普通党员对照检查材料
2014/09/24 职场文书
杜甫草堂导游词
2015/02/03 职场文书
撤诉书怎么写
2015/05/19 职场文书
如何撰写创业策划书
2019/06/27 职场文书
html5实现点击弹出图片功能
2021/07/16 HTML / CSS