深度优先遍历(DFS)
import os def getDirDFS(path): #声明一个空栈 stack = [] #向栈中添加一个需要遍历的目录 stack.append(path) #遍历执行的条件: 栈不为空 while len(stack) > 0: #取出栈中的内容进行遍历 tempPath = stack.pop() #获得该路径下所有子文件 dirList = os.listdir(tempPath) #遍历 for filename in dirList: nextPath = os.path.join(tempPath, filename) if os.path.isfile(nextPath): print(nextPath) elif os.path.isdir(nextPath): stack.append(nextPath)
广度优先遍历(BFS)
import os from collections import deque def getDirBFS(path): #创建空队列 queue = deque() #向队列中添加一个目录 queue.appe