利用Python實(shí)現(xiàn)批量轉(zhuǎn)換圖片格式
各位小伙伴們,你是不是也厭倦了那些單調(diào)乏味的圖片格式?又或者飽受不同格式的圖片文件所困擾?別急,今天小編來(lái)給你送上一份活潑有趣的Python教程,讓我們一起告別單調(diào),迎接多彩多姿的圖片世界吧!
準(zhǔn)備工作
首先,我們要準(zhǔn)備一些好玩的東西。拿上你的Python裝備吧!另外,還需要使用到PIL庫(kù)(Python Imaging Library),這個(gè)家伙可是我們圖片處理的得力助手哦!
PIL庫(kù)的安裝:
pip install Pillow
代碼實(shí)現(xiàn)
from PIL import Image
import os
def convert_images_in_folder(input_folder,output_folder,output_format):
os.makedirs(output_folder,exist_ok=True)
for filename in os.listdir(input_folder):
input_path = os.path.join(input_folder,filename)
if os.path.isfile(input_path):
output_filename = f"{os.path.splitext(filename)[0]}.{output_format}"
output_path = os.path.join(output_folder,output_filename)
with Image.open(input_path) as img:
img.save(output_path)
# 測(cè)試
convert_images_in_folder('input_images','output_images','png')代碼解析
這段代碼雖然短小,但卻包含了PIL庫(kù)的應(yīng)用、文件處理、以及圖片格式轉(zhuǎn)換的精彩操作。Python就像是一個(gè)色彩斑斕的調(diào)色盤,在你的世界里添上不一樣的色彩!
這段代碼實(shí)現(xiàn)了批量轉(zhuǎn)換圖片格式的功能。讓我來(lái)逐步解釋一下:
1.首先是導(dǎo)入了PIL庫(kù)中的Image模塊以及Python的os模塊。PIL庫(kù)是Python Imaging Library,提供了圖像處理的基本功能,os模塊則用于系統(tǒng)交互操作。
2.定義了名為convert_images_in_folder的函數(shù),該函數(shù)接收三個(gè)參數(shù):
3.使用os.makedirs(output_folder,exist_ok=True)創(chuàng)建輸出文件夾,如果文件夾已存在則不會(huì)報(bào)錯(cuò)(exist_ok=True)。
4.使用os.listdir(input_folder)遍歷輸入文件夾中的所有文件,對(duì)每個(gè)文件進(jìn)行格式轉(zhuǎn)換。
5.對(duì)于每個(gè)文件,獲取其完整路徑input_path,并檢查它是否是文件(os.path.isfile(input_path))。
6.如果是文件,則根據(jù)原文件名生成轉(zhuǎn)換后的文件名output_filename,并拼接得到輸出路徑output_path。
7.使用PIL庫(kù)中的Image.open打開原圖片,然后使用save方法保存為指定格式的圖片。
8.最后,在測(cè)試部分調(diào)用convert_images_in_folder函數(shù)進(jìn)行測(cè)試,將輸入文件夾input_images中的圖片轉(zhuǎn)換為png格式,并保存到輸出文件夾output_images中。
這段代碼利用PIL庫(kù)實(shí)現(xiàn)了批量轉(zhuǎn)換圖片格式的功能,讓圖片處理變得如此輕松!希望這個(gè)解釋能幫助你理解這段有趣的圖片處理代碼!如果有其他問(wèn)題,隨時(shí)提問(wèn)哦!
input_folder:輸入圖片所在的文件夾路徑output_folder:轉(zhuǎn)換后圖片要保存的文件夾路徑output_format:要轉(zhuǎn)換成的圖片格式(如'png'、'jpeg'等)
激動(dòng)人心的測(cè)試
快來(lái)跟著小編的指引,將你收集的圖片集變出花樣吧!只需要將輸入文件夾路徑、輸出文件夾路徑和目標(biāo)格式簡(jiǎn)單地傳入convert_images_in_folder函數(shù),Python就能幫你完成格式轉(zhuǎn)換的魔法!
我的【待轉(zhuǎn)換格式的圖片】這個(gè)文件夾在桌面:

目前的格式都是jpg的,我想把它們都轉(zhuǎn)成png的格式,并輸出到桌面上的【轉(zhuǎn)換后的圖片】文件夾里。接著要上我們的代碼了,只需要把最后一行的參數(shù)改一下:
convert_images_in_folder(
'C:/Users/olive/Desktop/待轉(zhuǎn)換格式的圖片',
'C:/Users/olive/Desktop/轉(zhuǎn)換后的圖片',
'png')接著,運(yùn)行一下我們的代碼,速度很快,馬上在我們的桌面上的【轉(zhuǎn)換后的圖片】文件夾里生成了轉(zhuǎn)換后的圖片:

我們注意看兩點(diǎn),第一,轉(zhuǎn)換后的圖片,果然是png格式的。第二,轉(zhuǎn)換后的圖片大小是不同的,轉(zhuǎn)成png格式后,文件居然大了差不多5倍,所以不是簡(jiǎn)單地改了一下文件的后綴名,而是真正意義上的圖片格式的轉(zhuǎn)換哦!看來(lái)PIL庫(kù)確實(shí)是太強(qiáng)大了,前人栽樹,我們乘涼,真爽!

結(jié)語(yǔ)
期待看到你的圖片作品,都是為了更加精彩的畫面呀!如果有任何問(wèn)題,或者想要更多有趣的Python教程,都?xì)g迎隨時(shí)提問(wèn)哦!加油!
以上就是利用Python實(shí)現(xiàn)批量轉(zhuǎn)換圖片格式的詳細(xì)內(nèi)容,更多關(guān)于Python批量轉(zhuǎn)換圖片格式的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
用python修改excel表某一列內(nèi)容的操作方法
這篇文章主要介紹了用python修改excel表某一列內(nèi)容的操作代碼,在實(shí)現(xiàn)過(guò)程中用到openpyxl這個(gè)庫(kù),要生成隨機(jī)數(shù)就要有random這個(gè)庫(kù),具體代碼跟隨小編一起看看吧2021-06-06
python 實(shí)現(xiàn)控制鼠標(biāo)鍵盤
這篇文章主要介紹了python 控制鼠標(biāo)鍵盤的示例,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下2020-11-11
python pytesseract庫(kù)的實(shí)例用法
在本篇文章里小編給大家整理的是一篇關(guān)于python pytesseract庫(kù)的實(shí)例用法,有需要的朋友們可以學(xué)習(xí)參考下。2021-07-07
Python 執(zhí)行字符串表達(dá)式函數(shù)(eval exec execfile)
今天在網(wǎng)上搜尋一些應(yīng)用的例子時(shí),發(fā)現(xiàn)有人用TK僅僅幾行代碼就寫了個(gè)簡(jiǎn)易的計(jì)算器,驚為天人?;貞浧饎倢W(xué)軟件技術(shù)基礎(chǔ)時(shí)編寫簡(jiǎn)易計(jì)算器的艱辛,頓時(shí)淚流滿面2014-08-08
基于python編寫監(jiān)控系統(tǒng)各項(xiàng)資源的腳本
這篇文章主要為大家詳細(xì)介紹了如何編寫一個(gè)python腳本,實(shí)現(xiàn)監(jiān)控網(wǎng)絡(luò)的流量、CPU使用率、內(nèi)存使用率和磁盤使用情況,感興趣的小伙伴可以了解下2023-11-11
torch.utils.data.DataLoader與迭代器轉(zhuǎn)換操作
這篇文章主要介紹了torch.utils.data.DataLoader與迭代器轉(zhuǎn)換操作,文章內(nèi)容接受非常詳細(xì),對(duì)正在學(xué)習(xí)或工作的你有一定的幫助,需要的朋友可以參考一下2022-02-02
Python?sklearn轉(zhuǎn)換器估計(jì)器和K-近鄰算法
這篇文章主要介紹了Python?sklearn轉(zhuǎn)換器估計(jì)器和K-近鄰算法,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-08-08

