利用Python实现批量转换图片格式
目录
- 准备工作
- 代码实现
- 代码解析
- 激动人心的测试
- 结语
各位小伙伴们,你是不是也厌倦了那些单调乏味的图片格式?又或者饱受不同格式的图片文件所困扰?别急,iAUmXSc今天小编来给你送上一份活泼有编程客栈趣的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就像是一个色彩斑斓的调色盘,在你的www.devze.com世界里添上不一样的色彩!
这段代码实现了批量转换图片格式的功能。让我来逐步解释一下:
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.如果是文件,则根据原文件名生成转www.devze.com换后的文件名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批量转换图片格式的资料请关注编程客栈(www.devze.com)其它相关文章!
精彩评论