需求:需要按照文件名称顺序进行读取。

目录

一、 修改前的程序代码

二、 修改前的程序的执行结果

三、 修改后的程序代码

四、 修改后的程序执行结果


这是图片正确的显示顺序:

 

一、 修改前的程序代码

#!/usr/bin/python
# -*- coding: UTF-8 -*-
"""
@author: Roc-xb
"""
import os

if __name__ == '__main__':
    base_dir = "imgs//"
    file_list = os.listdir(base_dir)
    for file in file_list:
        print(file)

二、 修改前的程序的执行结果

很明显,程序读取出来的顺序,跟我们预期的顺序不一样,所以我们可以将代码 修改一下

三、 修改后的程序代码

#!/usr/bin/python
# -*- coding: UTF-8 -*-
"""
@author: Roc-xb
"""
import os
import re

if __name__ == '__main__':
    base_dir = "imgs//"
    file_list = os.listdir(base_dir)
    file_list.sort(key=lambda x: int(str(re.findall("\d+", x)[0])))
    for file in file_list:
        print(file)

再次运行,就可以得到我们预期的结果了。 

四、 修改后的程序执行结果

 

更多推荐

python读取文件列表并排序