Python os.walk的用法详解
一、概述
在Python中,os模块提供了许多与操作系统交互的功能,其中之一就是os.walk()函数。这个函数用于遍历一个目录及其子目录中的所有文件和文件夹,并以迭代器的形式返回它们的路径信息。本文将详细介绍os.walk()函数的用法,并通过示例代码演示其具体应用。
二、os.walk()函数的基本用法
os.walk()函数接受一个路径作为参数,并返回一个生成器对象。通过遍历这个生成器对象,我们可以获得目录中所有文件和子目录的路径信息。
下面是os.walk()函数的基本用法:
三、遍历目录所有文件和子目录的实例
下面通过一个具体的示例来演示os.walk()函数的应用。
示例代码:
运行结果:
./test.txt
./subdir1
./subdir2
./subdir1/file1.txt
./subdir1/file2.txt
./subdir2/file3.txt
从上面的示例可以看出,os.walk()函数会遍历指定目录中的所有文件和子目录。我们可以通过遍历生成器对象返回的root、dirs、files,来分别获取当前正在遍历的目录路径、子目录列表和文件列表。
四、遍历目录并选择性过滤文件和子目录的实例
除了遍历目录中的所有文件和子目录,os.walk()函数还允许我们在遍历过程中根据需要对文件和子目录进行过滤。我们可以根据文件名、文件扩展名、文件夹名等进行过滤操作。
示例代码:
运行结果:
./test.txt
./subdir1
./subdir2
./subdir1/file1.txt
./subdir1/file2.txt
./subdir2/file3.txt
从上面的示例可以看出,我们可以使用字符串的方法来对文件和子目录进行过滤。比如,使用endswith()方法对文件进行过滤,使用startswith()方法对子目录进行过滤。
五、总结
本文详细介绍了Python中os.walk()函数的用法。通过调用os.walk()函数,我们可以遍历指定目录及其子目录中的所有文件和文件夹,并进行相应的操作。在实际应用中,我们可以根据具体需求对文件和子目录进行过滤,以得到我们想要的结果。