Python 创建';s以数字顺序命名

Python 创建';s以数字顺序命名,python,python-3.x,Python,Python 3.x,我有一个脚本,它应该打开一个png图像,然后调整它的大小,然后以数字顺序保存为jpg。但我从互联网上复制的数字排序代码不适用于PIL。它给了我一个异常“keyrerror:'W'” 还有其他方法吗?根据Haken Lid的评论进行编辑 PIL文档说明函数save接受以下参数: Image.save(fp, format=None, **params) 您传递的参数w不在可接受的文件格式集中。 您可以看到哪些格式被接受。要使其正常工作,只需删除w参数并用%d替换%s(i是一个整数,而不是字符串)

我有一个脚本,它应该打开一个png图像,然后调整它的大小,然后以数字顺序保存为jpg。但我从互联网上复制的数字排序代码不适用于PIL。它给了我一个异常“keyrerror:'W'”


还有其他方法吗?

根据Haken Lid的评论进行编辑

PIL文档说明函数save接受以下参数:

Image.save(fp, format=None, **params)
您传递的参数
w
不在可接受的文件格式集中。 您可以看到哪些格式被接受。要使其正常工作,只需删除
w
参数并用%d替换
%s
(i是一个整数,而不是字符串):


注意:从标签上看,不清楚您使用的是python2还是python3。如果您使用的是python 3,我建议使用新方法格式化字符串:

RGB.save("image{}.jpg".format(i))
您甚至可以指定一个填充,以便以后可以按名称对文件进行排序:

RGB.save("image{:04d}.jpg".format(i))

其中,4表示您的数字将用零填充,长度至少为4。

请将完整的错误回溯添加到您的问题文本中。“从internet复制”。也许您想限制一下。您不完全正确。您引用的文档用于多帧图像,例如动画GIF。对于常规图像,可以提供格式字符串作为第二个参数(例如“jpg”)。但是
w
不是受支持的图像格式,因此您的答案应该可以解决这个问题。由于python3.6我们也可以在这里使用f字符串:
f'image{i:04}.jpg'
@HåkenLid你说得对,我会编辑我的答案,谢谢!
RGB.save("image{}.jpg".format(i))
RGB.save("image{:04d}.jpg".format(i))