队列模拟递归遍历目录

import os
import collections
def getAllDirQU(path):
    queue = collections.deque()
    # 进队
    queue.append(path)
    while len(queue) != 0:
        # 出队数据
        dirPath = queue.popleft()
        # 找出所有的文件
        filesList = os.listdir(dirPath)
        for fileName in filesList:
            # 绝对路径
            fileAbsPath = os.path.join(dirPath,fileName)
            # 判断是否是目录,是目录就进队,不是就打印
            if os.path.isdir(fileAbsPath):
                print("目录:" + fileName)
                queue.append(fileAbsPath)
            else:
                print("普通文件" + fileName)

getAllDirQU(r"G:\program\PycharmProjects\workplace\day01\temp")

你可能感兴趣的:(队列模拟递归遍历目录)