遍历文件目录

问题描述 投票:0回答:2

这是我在stackoverflow上发布的第一个问题,如果我做的超出正常范围,请原谅。

我正在尝试创建一个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
python file traversal
2个回答
0
投票

这将只给您文件:

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

0
投票

我希望这会有所帮助:

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容易得多。

© www.soinside.com 2019 - 2024. All rights reserved.