os模块 | os.walk()用法

发布时间 2023-08-30 21:55:47作者: 槑孒

os.walk() 是 Python 标准库 os 模块中的一个函数,用于递归遍历目录结构,返回当前目录及其子目录中的所有文件和文件夹。

下面是 os.walk() 函数的用法示例:

  1. 导入模块:
import os
  1. 使用 os.walk() 遍历目录:
start_path = '/path/to/directory'

for root, dirs, files in os.walk(start_path):
    print("Current directory:", root)
    print("Subdirectories:", dirs)
    print("Files:", files)

在这个示例中,os.walk() 返回一个生成器,每次迭代都会产生一个三元组 (root, dirs, files),其中:

  • root 是当前目录的路径。
  • dirs 是当前目录中的子目录列表。
  • files 是当前目录中的文件列表。

这个循环将遍历指定目录(包括其子目录)中的所有内容,并输出每个目录的路径、子目录列表和文件列表。

  1. 针对特定条件过滤文件:
for root, dirs, files in os.walk(start_path):
    for file in files:
        if file.endswith('.txt'):
            print(os.path.join(root, file))

这个示例中,我们遍历指定目录及其子目录,找出所有扩展名为 .txt 的文件并输出它们的完整路径。

os.walk() 可以在目录遍历、文件搜索、数据处理等方面非常有用。在使用时,替换 /path/to/directory 为要遍历的实际目录路径。

需要注意的是,os.walk() 是递归遍历,所以对于大型目录结构,可能会占用较多内存和时间。