遍历文件目录

Traversing File Directory

这是我在 Whosebug 上发布的第一个问题,如果我做了一些不正常的事情,请原谅。

我正在尝试创建一个 python 程序,它遍历用户选择的目录以显示所选文件夹的所有文件内容。例如:Documents 文件夹中有几个文件夹,里面有文件,我试图将 Documents 文件夹中的所有文件保存到一个数组中。

下面的方法是我用来遍历目录的方法(希望是个简单的问题)

def saveFilesToArray(dir):
allFiles = []

os.chdir(dir)
for file in glob.glob("*"):
    print(file)
    if (os.path.isfile(file)):
        allFiles.append(file)
    elif(os.path.isdir(file)):
        print(dir + "/" + file + " is a directory")
        allFiles.append(saveFilesToArray(dir + "/" + file))
return allFiles

这将为您提供文件:

import os
def list_files(root):
    all_files = []
    for root, dirs, files in os.walk(root, followlinks=True):
        for file in files:
            full_path = os.path.join(root, file)
            all_files.append(full_path)
    return all_files

希望对您有所帮助:

import os
def saveFilesToList(theDir):
    allFiles = []
    for root, dirs, files in os.walk(theDir):
        for name in files:
            npath = os.path.join(root,name)
            if os.path.isfile(npath):
                allFiles.append(npath)
    return allFiles

遍历所有目录并将文件(不是目录)的路径存储在列表中。这个好像比glob好用多了。