Python——用os模块寻找指定目录(包括子目录)下所有图片文件

import os  # 导入os模块


def search_file(start_dir):
    img_list = []
    extend_name = ['.jpg', '.png', '.gif']  # 图片格式,可以添加其他图片格式
    os.chdir(start_dir)  # 改变当前工作目录到指定的路径

    for each_file in os.listdir(os.curdir):
        # listdir()返回指定的文件夹包含的文件或文件夹的名字的列表 curdir表示当前工作目录

        img_prop = os.path.splitext(each_file)
        if img_prop[1] in extend_name:
            img_list.append(os.getcwd() + os.sep + each_file + os.linesep)
            # os.getcwd()获得当前路径 os.sep分隔符 os.linesep换行符

        if os.path.isdir(each_file):  # isdir()判断是否为文件夹
            search_file(each_file)  # 递归搜索子文件夹下的图片
            os.chdir(os.pardir)  # 返回上一级工目录

    with open(r'C:\Users\crazy\Desktop\img_list.txt', 'a') as file_obj:  # 此处修改输出文本文件目录及名称
        file_obj.writelines(img_list)  # writelines按行写入数据


if __name__ == '__main__':
    start_dir_list = [r'C:\Users\crazy\Documents\HBuilderProjects\瀑布流\img',
                      r'D:\Pic']
    for each_dir in start_dir_list:
        search_file(each_dir)

  附上结果图:

猜你喜欢

转载自www.cnblogs.com/crazyechoaoo/p/10667734.html