如果没有资源,可以找个视频,然后一帧一帧截图,当然也可以自己画。
可以看到这些图片的名字太长,我们需要给它重命名一下,最好是数字,方便我们以后排序。
这么多文件难道要一个一个改名字吗?
我们使用批量改名字的方法
name_renew.py
from os import listdir, rename
from os.path import splitext, join
def renewName(directory):
"""批量修改指定文件夹中的文件名"""
i = 1
"""该程序只能运行一次,为了不报错使用异常处理"""
try:
for fn in listdir(directory):
name, ext = splitext(fn)
newName = ''.join(str(i))
rename(join(directory, fn), join(directory, newName + ext))
i += 1
except :
pass
renewName(r'D:\pyCharm\pythonProject\after.gif\before.gif')
make_gif.py
from os import listdir
from os.path import join, basename
from gif import Image, save
folder = r'D:\pyCharm\pythonProject\after.gif\before.gif'
image_files = [join(folder, fn) for fn in listdir(folder) if fn.endswith('.png')]
image_files.sort(key=lambda fn: int(basename(fn)[:-4]))
frames = []
for fn in image_files:
frames.append(Image.open(fn))
save(frames, 'fly.gif', duration=0.1, unit='seconds', between='frames', loop=True)