利用 os.walk() 遍历目录

os.walk:

walk(top, topdown=True, onerror=None, followlinks=False)

参数:

  • top 要遍历的目录地址
  • topdown 为真,则优先遍历top目录,否则优先遍历top的子目录(默认为True)(广度深度)
  • onerror 需要一个 callable 对象,当walk需要异常时,会调用
  • followlinks 如果为真,则会遍历目录下的快捷方式

os.walk 的返回值是一个生成器(generator), 他会不断的遍历所给目录下的所有(子孙)目录(包括它本身)

每次遍历都是返回的是一个三元组(root, dirs, files)

  • root 当前正在遍历的目录地址
  • dirs 由正在遍历目录的子目录组成的 列表
  • files 同样是 列表, 是正在遍历的目录的 文件

遍历目录:

1 import os
2 def tree(top):
3     #path,folder list,file list
4     for path, names, fnames in os.walk(top):
5         for fname in fnames:
6             yield os.path.join(path, fname)
7 
8 for name in tree(os.getcwd()):
9     print(name)
原文地址:https://www.cnblogs.com/tingshuo123/p/6917698.html