如何用Python遍历多层嵌套文件夹并读取所有文件?
- 内容介绍
- 文章标签
- 相关推荐
本文共计653个文字,预计阅读时间需要3分钟。
由于工作安排,需要读取多层文件夹下嵌套的文件。文件夹结构如下所示:
+|-- folder1| |-- file1.txt| `-- folder2| |-- file2.txt| `-- folder3| |-- file3.txt`-- folder4 |-- file4.txt
可以使用递归函数和Python的os模块来实现。以下是一个示例代码:
pythonimport os
def read_nested_files(path): for root, dirs, files in os.walk(path): for file in files: file_path=os.path.join(root, file) if os.path.isfile(file_path): with open(file_path, 'r') as f: print(f.read())
read_nested_files('.')
这段代码会遍历指定路径下的所有文件,并读取它们的文本内容。使用`os.walk()`函数可以递归地遍历所有子文件夹。`os.path.isfile()`函数用于判断当前路径是否为可执行文件。如果不是,则继续使用`os.listdir()`方法遍历子文件夹。
由于工作安排,需要读取多层文件夹下嵌套的文件,文件夹的结构如下图所示:
想到了递归函数,使用python的os.path.isfile方法判断当前是不是可执行文件,如果不是再用os.listdir方法将子目录循环判断。
本文共计653个文字,预计阅读时间需要3分钟。
由于工作安排,需要读取多层文件夹下嵌套的文件。文件夹结构如下所示:
+|-- folder1| |-- file1.txt| `-- folder2| |-- file2.txt| `-- folder3| |-- file3.txt`-- folder4 |-- file4.txt
可以使用递归函数和Python的os模块来实现。以下是一个示例代码:
pythonimport os
def read_nested_files(path): for root, dirs, files in os.walk(path): for file in files: file_path=os.path.join(root, file) if os.path.isfile(file_path): with open(file_path, 'r') as f: print(f.read())
read_nested_files('.')
这段代码会遍历指定路径下的所有文件,并读取它们的文本内容。使用`os.walk()`函数可以递归地遍历所有子文件夹。`os.path.isfile()`函数用于判断当前路径是否为可执行文件。如果不是,则继续使用`os.listdir()`方法遍历子文件夹。
由于工作安排,需要读取多层文件夹下嵌套的文件,文件夹的结构如下图所示:
想到了递归函数,使用python的os.path.isfile方法判断当前是不是可执行文件,如果不是再用os.listdir方法将子目录循环判断。

