python遍历目录下的所有文件和目录详细介绍

Posted 修炼之路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python遍历目录下的所有文件和目录详细介绍相关的知识,希望对你有一定的参考价值。

目录结构如下图:

test---a------d------g--------g.txt

test---a------d------a.txt

test---a------e

--------b

--------c

--------1.txt

--------2.txt

一、使用os.walk遍历所有的目录和文件

1、获取test目录下的所有文件

    for root,dirs,files in os.walk(r"D:\\test"):
        for file in files:
            #获取文件所属目录
            print(root)
            #获取文件路径
            print(os.path.join(root,file))

2、获取test目录下的所有目录

    for root,dirs,files in os.walk(r"D:\\test"):
        for dir in dirs:
            #获取目录的名称
            print(dir)
            #获取目录的路径
            print(os.path.join(root,dir))

 

二、利用os.listdir递归获取所有的目录路径和文件路径

def get_file_path(root_path,file_list,dir_list):
    #获取该目录下所有的文件名称和目录名称
    dir_or_files = os.listdir(root_path)
    for dir_file in dir_or_files:
        #获取目录或者文件的路径
        dir_file_path = os.path.join(root_path,dir_file)
        #判断该路径为文件还是路径
        if os.path.isdir(dir_file_path):
            dir_list.append(dir_file_path)
            #递归获取所有文件和目录的路径
            get_file_path(dir_file_path,file_list,dir_list)
        else:
            file_list.append(dir_file_path)

if __name__ == "__main__":
    #根目录路径
    root_path = r"D:\\test"
    #用来存放所有的文件路径
    file_list = []
    #用来存放所有的目录路径
    dir_list = []
    get_file_path(root_path,file_list,dir_list)
    print(file_list)
    print(dir_list)

以上是关于python遍历目录下的所有文件和目录详细介绍的主要内容,如果未能解决你的问题,请参考以下文章

交互式shell脚本遍历文件目录下的所有文件和目录(绝对路径)

如何使用perl遍历一个目录下的所有文件

C#,给定一个目录,遍历该目录下的所有文件、文件夹

交互式shell脚本遍历文件目录下的所有文件和目录(绝对路径)

python3遍历目录获取所有子目录以及子目录下的所有文件

python遍历打印一个目录及其里面所有的文件和目录