Python智阐10-文件目录遍历(四种方法)

我们对文件操作时,往往要遍历整个文件目录。前面已经介绍了文件和目录的操作方法,也介绍了递归函数。现在介绍一下四种目录遍历的方法(思维)。

1、方法一(普通递归)

方法(思维):根据文件目录获取该目录下的所有文件,然后对这些文件进行判断,如果是文件夹,则调用函数本身,如果是普通文件,则打印出文件名。

代码如下:

2、方法二(模拟栈)

栈特点:先进后出,模拟栈方法遍历目录,深度遍历。

方法(思维):先创建一个空的列表,把文件目录当做一个元素添加进列表,从列表末尾取出一个元素(文件目录),获取该目录下的所有文件,然后对这些文件进行判断,如果是文件夹,则调用函数本身(添加进列表),如果是普通文件,则打印出文件名,如此循环处理这个列表。

代码如下:

3、方法三(模拟队列)

队列特点:先进先出,模拟队列方法遍历目录,广度遍历。

方法(思维):先生成一个队列,把文件目录当做一个元素添加进队列,从队列中取出一个元素(文件目录),获取该目录下的所有文件,然后对这些文件进行判断,如果是文件夹,则调用函数本身(添加进队列),如果是普通文件,则打印出文件名,如此循环处理这个队列。

代码如下:

4、方法四(os.walk(path))

walk()方法主要参数有path,其他参数请参考官方文档

path:所要遍历的目录,它返回的是一个元组(root,dirs,files)

其中:

root 是指当前正在遍历的这个文件夹的本身的路径

dirs 是一个 list ,列表中的元素是该文件夹中所有的目录的名字(不包括子目录)

files 是一个 list , 列表中的元素是该文件夹中所有的文件(不包括子目录)

代码如下:

发表评论
留言与评论(共有 0 条评论)
   
验证码:

相关文章

推荐文章

'); })();