我有一个文件夹,里面有pngs的图,比如地震0、地震1、地震2等等。这些照片通过moviepy转换为GIF,但是Python的排序结果是1,10,100而不是1,2,3。
下面是moviepy的代码
import os
os.chdir(r'path')
from moviepy.editor import *
image_list = 'exports' # folder
my_clip = ImageSequenceClip(image_list, fps=0.75)
my_clip.write_gif('eqph_gif.gif')
我曾试过添加 这个 但Python说它找不到文件夹。
image_list = natsort.natsorted(image_list)
解决了!
def gif():
os.chdir(r'C:\Users\imper\Documents\new_GISfiles\earthquakesPH\exports')
imgs = humansorted(os.listdir('.'))
my_clip = ImageSequenceClip(imgs, fps=1.5)
my_clip.write_videofile('eqph.mp4', fps=15)
rlearnpython的人指出,即使我已经设置了工作目录os.chdir(r'path'),我也不能只写imgs = 'exports'。https:/www.reddit.comrlearnpythoncommentsguabw3the_humansorted_function_work_when_ran_in_the