Python:jpg文件自动转换成gif文件(静态图片,只转格式)

本人最近刚好接触tkinter库,遇到显示图片的问题,需要jpg自动批量转换为gif的工具,由于懒得去找,根据网上的教程,做了一个程序

1.以下是代码内容

import os
from PIL import Image

def tran_gif(a,b):
    path=a
    file=os.listdir(path)#返回文件夹包含文件及文件夹名字列表
    print(file)
    images=[]
    for i in range(len(file)):
        file[i] = path + file[i]
        ima = Image.open(file[i])
        images.append(ima)
        images[i].save(b + 'name.gif', "GIF", save_all=False)#转格式

path="转换的jpg文件路径"
#注意路径用这种形式 'C:/xxxx/xxxx/xxx/' 或 'D:/xxxx/xxxx/xxx/'
path1="gif文件生成文件路径"
#同路径时,path=path1
tran_gif(path,path1)

2.print一下file

['1.jpg', '10.jpg', '11.jpg', '12.jpg', '13.jpg', '14.jpg', '2.jpg', '3.jpg', '4.jpg', '5.jpg', '6.jpg', '7.jpg', '8.jpg', '9.jpg']

3.print一下file[i]

C:/Users/120/Pictures/girl/1.jpg 等

4.如果想要从小到大排序

则加一条 file.sort(key=lambda x: int(x[:-4]))

def tran_gif(a,b):
    path=a
    file=os.listdir(path)#返回文件夹包含文件及文件夹名字列表
    file.sort(key=lambda x: int(x[:-4]))
    images=[]
    for i in range(len(file)):
        file[i] = path + file[i]
        ima = Image.open(file[i])
        images.append(ima)
        images[i].save(b + 'name.gif', "GIF", save_all=False)#转格式

path="转换的jpg文件路径"
#注意路径用这种形式 'C:/xxxx/xxxx/xxx/' 或 'D:/xxxx/xxxx/xxx/'
path1="gif文件生成文件路径"
#同路径时,path=path1
tran_gif(path,path1)

5.print一下file

['1.jpg', '2.jpg', '3.jpg', '4.jpg', '5.jpg', '6.jpg', '7.jpg', '8.jpg', '9.jpg', '10.jpg', '11.jpg', '12.jpg', '13.jpg', '14.jpg']

解决了。

本人只是菜鸟,如果有改进方法,还望赐教

6.参考链接

深入探索Python中的os.listdir函数-CSDN博客

Python 使用sort(key=lambda)按顺序读取指定文件夹下的文件_按照顺序读取文件名-CSDN博客

详解Python PIL Image.open()方法 - Python技术站 (pythonjishu.com)

python读取某文件下的所有图片并制作成gif图_python 读取图片制作动图-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值