Python3 全自動(dòng)更新已安裝的模塊實(shí)現(xiàn)
1. 手動(dòng)操作
1.1. 顯示模塊
pip list
1.2. 顯示過(guò)期模塊
pip list --outdated
1.3. 安裝模塊
pip install xxx
1.4. 升級(jí)模塊
pip install --upgrade xxx
2. 自動(dòng)操作
手動(dòng)敲命令升級(jí)有點(diǎn)兒麻煩(特別是需要更新的模塊比較多時(shí)),而我們完全可以用代碼簡(jiǎn)單地實(shí)現(xiàn)全自動(dòng)升級(jí)。
代碼可以至GitHub下載,也可以復(fù)制本文中的代碼:

autoUpgradePythonModules.py:
import subprocess
import os
command = "pip list --outdated"
print('正在獲取需要升級(jí)的模塊信息,請(qǐng)稍后...')
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("沒(méi)有模塊需要更新??!")
print('All modules is updated.')
print('請(qǐng)按回車鍵以退出程序。')
print('Press enter key to quit.')
input()
Windows平臺(tái)下可以運(yùn)行下面的腳本,該腳本會(huì)自動(dòng)獲取管理員權(quán)限并進(jìn)行更新(安裝在C盤或者其他一些特殊的目錄下可能需要管理員權(quán)限才能更新)。
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
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python實(shí)現(xiàn)批量nii文件轉(zhuǎn)換為png圖像
這篇文章主要介紹了python實(shí)現(xiàn)批量nii文件轉(zhuǎn)換為png圖像,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07
python使用BeautifulSoup分析網(wǎng)頁(yè)信息的方法
這篇文章主要介紹了python使用BeautifulSoup分析網(wǎng)頁(yè)信息的方法,涉及Python使用BeautifulSoup模塊分析網(wǎng)頁(yè)信息的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-04-04
Pytorch中Softmax與LogSigmoid的對(duì)比分析
這篇文章主要介紹了Pytorch中Softmax與LogSigmoid的對(duì)比分析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06
Python3+Pycharm+PyQt5環(huán)境搭建步驟圖文詳解
這篇文章主要介紹了Python3+Pycharm+PyQt5環(huán)境搭建步驟圖文詳解,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-05-05
如何將Pycharm中Terminal使用Powershell作為終端
這篇文章主要介紹了如何將Pycharm中Terminal使用Powershell作為終端問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05
python 中if else 語(yǔ)句的作用及示例代碼
python中的if-else語(yǔ)句是一個(gè)判斷性語(yǔ)句,既然是判斷就要有條件以及滿足條件與不滿足的情況,一下將講解一些if-else語(yǔ)句的知識(shí),需要的朋友參考下吧2018-03-03
教你如何用Python實(shí)現(xiàn)人臉識(shí)別(含源代碼)
Python可以從圖像或視頻中檢測(cè)和識(shí)別你的臉.人臉檢測(cè)與識(shí)別是計(jì)算機(jī)視覺(jué)領(lǐng)域的研究熱點(diǎn)之一.人臉識(shí)別的應(yīng)用包括人臉解鎖、安全防護(hù)等,醫(yī)生和醫(yī)務(wù)人員利用人臉識(shí)別來(lái)獲取病歷和病史,更好地診斷疾病,需要的朋友可以參考下2021-06-06
如何理解python接口自動(dòng)化之logging日志模塊
代碼需要經(jīng)歷開(kāi)發(fā)、調(diào)試、審查、測(cè)試或者上線等不同階段,在“測(cè)試”時(shí),可能只想看警告和錯(cuò)誤信息,然而在“調(diào)試”時(shí),可能還想看到跟調(diào)試相關(guān)的信息。如果想打印出使用的模塊以及代碼運(yùn)行的時(shí)間,那么代碼很容易變得混亂。使用logging日志模塊,就能很容易地解決2021-06-06
python 中的collections.OrderedDict() 用法
這篇文章主要介紹了python 中的collections.OrderedDict() 用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-05-05
Python中的HTTP請(qǐng)求庫(kù)Requests的具體使用
Python作為一種功能強(qiáng)大且易于學(xué)習(xí)的編程語(yǔ)言,提供了許多用于處理HTTP請(qǐng)求的庫(kù),其中,Requests庫(kù)是最受歡迎的選擇之一,本文主要介紹了Python中的HTTP請(qǐng)求庫(kù)Requests的具體使用,感興趣的可以了解一下2023-12-12

