Python3 获取文件夹中的所有文件

import os

def cir_dir(dirs, all_files=[]):
    if isinstance(dirs,str):#在一开始把函数调用时输入路径字符串转换为列表
        dirs = [dirs]
    for i in dirs:#遍历文件夹路径的容器
        if os.path.isdir(i):
            os.chdir(i)#改变默认路径
            current_list = os.listdir()#获取当前路径下的文件夹和文件
            files = filter(os.path.isfile, current_list)#滤出文件
            files = map(lambda x: os.path.join(os.getcwd(), x), files)#拼接文件绝对路径
            all_files.extend(list(files))#文件放入容器中
            dirs = filter(os.path.isdir, current_list)#滤出文件夹
            dirs = map(lambda x: os.path.join(os.getcwd(), x), dirs)#拼接文件夹绝对路径
            cir_dir(list(dirs), all_files)#递归
        else:
            all_files.append(i)
    return all_files

files = cir_dir('/')
print(files)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容