各位小伙伴们,你是不是也厌倦了那些单调乏味的图片格式?又或者饱受不同格式的图片文件所困扰?别急,今天小编来给你送上一份活泼有趣的python教程,让我们一起告别单调,迎接多彩多姿的图片世界吧!
准备工作
首先,我们要准备一些好玩的东西。拿上你的python装备吧!另外,还需要使用到pil库(python imaging library),这个家伙可是我们图片处理的得力助手哦!
pil库的安装:
pip install pillow
代码实现
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) # 测试 convert_images_in_folder('input_images','output_images','png')
代码解析
这段代码虽然短小,但却包含了pil库的应用、文件处理、以及图片格式转换的精彩操作。python就像是一个色彩斑斓的调色盘,在你的世界里添上不一样的色彩!
这段代码实现了批量转换图片格式的功能。让我来逐步解释一下:
1.首先是导入了pil库中的image模块以及python的os模块。pil库是python imaging library,提供了图像处理的基本功能,os模块则用于系统交互操作。
2.定义了名为convert_images_in_folder
的函数,该函数接收三个参数:
3.使用os.makedirs(output_folder,exist_ok=true)
创建输出文件夹,如果文件夹已存在则不会报错(exist_ok=true
)。
4.使用os.listdir(input_folder)
遍历输入文件夹中的所有文件,对每个文件进行格式转换。
5.对于每个文件,获取其完整路径input_path
,并检查它是否是文件(os.path.isfile(input_path)
)。
6.如果是文件,则根据原文件名生成转换后的文件名output_filename
,并拼接得到输出路径output_path
。
7.使用pil库中的image.open打开原图片,然后使用save方法保存为指定格式的图片。
8.最后,在测试部分调用convert_images_in_folder
函数进行测试,将输入文件夹input_images
中的图片转换为png
格式,并保存到输出文件夹output_images
中。
这段代码利用pil库实现了批量转换图片格式的功能,让图片处理变得如此轻松!希望这个解释能帮助你理解这段有趣的图片处理代码!如果有其他问题,随时提问哦!
input_folder
:输入图片所在的文件夹路径output_folder
:转换后图片要保存的文件夹路径output_format
:要转换成的图片格式(如'png'、'jpeg'等)
激动人心的测试
快来跟着小编的指引,将你收集的图片集变出花样吧!只需要将输入文件夹路径、输出文件夹路径和目标格式简单地传入convert_images_in_folder
函数,python就能帮你完成格式转换的魔法!
我的【待转换格式的图片】这个文件夹在桌面:
目前的格式都是jpg的,我想把它们都转成png的格式,并输出到桌面上的【转换后的图片】文件夹里。接着要上我们的代码了,只需要把最后一行的参数改一下:
convert_images_in_folder( 'c:/users/olive/desktop/待转换格式的图片', 'c:/users/olive/desktop/转换后的图片', 'png')
接着,运行一下我们的代码,速度很快,马上在我们的桌面上的【转换后的图片】文件夹里生成了转换后的图片:
我们注意看两点,第一,转换后的图片,果然是png格式的。第二,转换后的图片大小是不同的,转成png格式后,文件居然大了差不多5倍,所以不是简单地改了一下文件的后缀名,而是真正意义上的图片格式的转换哦!看来pil库确实是太强大了,前人栽树,我们乘凉,真爽!
结语
期待看到你的图片作品,都是为了更加精彩的画面呀!如果有任何问题,或者想要更多有趣的python教程,都欢迎随时提问哦!加油!
以上就是利用python实现批量转换图片格式的详细内容,更多关于python批量转换图片格式的资料请关注代码网其它相关文章!
发表评论