【发布时间】:2019-12-04 12:01:29
【问题描述】:
我有一个包含 .jpg 文件(来自不同视频文件的帧)的目录。文件名看起来像 'frame_{}_{}'.format(number_of_video, frame_number)。 例如:'frame_1_1234.jpg'
如何通过两级排序按升序对文件进行排序?首先是 number_of_video,其次是 frame_number。
现在我有了这个:
['frame_0_0.jpg','frame_0_1.jpg','frame_0_10.jpg','frame_0_100.jpg','frame_0_1000.jpg','frame_0_1001.jpg','frame_0_1002.jpg','frame_0_1003.jpg','frame_0_1004.jpg','frame_0_1005.jpg','frame_0_1006.jpg','frame_0_1007.jpg',...]
我想要这个:
['frame_0_0.jpg', 'frame_0_1.jpg', 'frame_0_2.jpg',..., 'frame_1_0.jpg', 'frame_1_1.jpg', 'frame_1_2.jpg',...]
显然 .sorted() 盲目地将最重要的数字放在首位。
【问题讨论】: