from os import *
from PIL import Image
PATH = r"C:\Users\Administrator\Desktop"
def convert(list):
for webp in list:
if path.splitext(webp)[1] != ".webp": continue
# 打开图片并赋值一份新的图片
wept = path.join(PATH, webp)
img = Image.open(wept)
img.load()
# 将赋值的图片修改后缀保存在原路径
img.save(path.join(PATH, webp[0:webp.rindex('.')] + ".jpg"))
# 删除原webp图
remove(wept)
list = []
for root, dirs, files in walk(PATH):
for f in files: list.append(f)
convert(list)
20行代码把桌面的webp转成jpg格式图片
PATH对应路径,可以是任意路径
你这代码问题有点多
首先覆盖了
list()
函数,这不是一个好习惯其次下面应该用
if __name__ == '__main__':
包裹还有你的写法直接忽略了文件夹层次,如果给的路径里面有多层次文件夹并且里面有图片的话会直接报错,然后files本来就是一个列表了不需要再遍历,可以直接添加
最后不应该直接删除原图片,这样太暴力了,如果出了什么问题,你原图片就没了