首页 > 解决方案 > 遍历文件目录

问题描述

这是我在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

标签: pythonfiletraversal

解决方案


这将只为您提供文件:

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

推荐阅读