python 遍历文件夹

134 阅读1分钟

1、列出文件夹中的文件, 遍历子文件夹

import os

def list_dir_files(root_dir, ext=None):
    """
    列出文件夹中的文件, 遍历子文件夹
    :param root_dir: 根目录
    :param ext: 后缀名
    :return: [文件路径列表, 文件名称列表]
    """
    names_list = []
    paths_list = []
    for filepath, dirnames, filenames in os.walk(root_dir):
        for name in filenames:
            if name.startswith('.'):  # 去除隐藏文件
                continue
            if ext:  # 根据后缀名搜索
                if name.endswith(tuple(ext)):
                    names_list.append(name)
                    paths_list.append(os.path.join(filepath, name))
            else:
                names_list.append(name)
                paths_list.append(os.path.join(filepath, name))
    return paths_list, names_list
    

2、简单遍历文件夹,不筛选

def get_files(paths):
    '''
    简单遍历文件夹,不筛选
    '''
    flist=[]
    for filepath,dirnames,filenames in os.walk(paths):
        for filename in filenames:
            fn=os.path.join(filepath,filename)
            print(fn)
            flist.append(fn)
    return flist