如何递归列出所有文件夹和文件?

时间:2013-12-14 01:57:13

标签: python-2.7

如何在python中获取文件夹和文件包括子目录的文件/文件夹? 我需要每个文件/文件夹的绝对路径。

我想重命名所有文件夹和文件。所以我必须先重命名文件夹。

folder
-- file
-- folder1
---- folder1.1
------ file
------ folder1.1.1
-------- file
-- folder2
---- ...

1 个答案:

答案 0 :(得分:4)

我快速浏览了一遍,发现它非常简单。来自Sven Marnach

  

你可以os.walk()   递归遍历目录及其所有子目录:

for root, dirs, files in os.walk(path):
    for name in files:
        if name.endswith((".html", ".htm")):
            # whatever
     

要构建这些名称的列表,您可以使用列表解析:

htmlfiles = [os.path.join(root, name)
             for root, dirs, files in os.walk(path)
             for name in files
             if name.endswith((".html", ".htm"))]