1

我想找到一个目录和所有子目录中的所有文件。

使用的代码:

import os
import sys

path = "C:\\"
dirs = os.listdir(path)
filename = "C.txt"
FILE = open(filename, "w")
FILE.write(str(dirs))
FILE.close()
print dirs

问题是 - 此代码仅列出目录中的文件,而不是子目录。为了也列出子目录中的文件,我需要更改什么?

4

2 回答 2

3

要遍历目录树,您需要为此使用os.walk()

这是一个帮助您入门的示例:

import os

searchdir = r'C:\root_dir' # traversal starts in this directory (the root) 

for root, dirs, files in os.walk(searchdir):
    for name in files:
        (base, ext) = os.path.splitext(name) # split base and extension
        print base, ext

这将使您可以访问文件名和组件。

您会发现osos.path模块中的函数对此类工作非常有用。

于 2012-08-13T17:41:11.377 回答
0

此功能将为您提供帮助:os.path.walk() http://docs.python.org/library/os.path.html#os.path.walk

于 2012-08-13T17:42:34.187 回答