重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
成都创新互联公司专注于库伦企业网站建设,成都响应式网站建设公司,成都商城网站开发。库伦网站建设公司,为库伦等地区提供建站服务。全流程按需定制制作,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务
在之前的文章中:https://www.cnblogs.com/leiziv5/p/.html,分享了基于python去递归查找文件中的文件。在后续的接触中,可以基于深度遍历和广度遍历来实现 1.深度遍历实现
对应实现思路:
1.创建栈
2.增加路径
3.当栈不为空,处理栈的一个路径
4.遍历路径下面的每一项
5.遇到文件夹加入到栈中
6.知道栈中元素为空,退出
import os path = '.' def GetAllDeep(path): stack = [] stack.append(path) # 处理栈,当栈为空时结束循环 while len(stack) != 0: # 从栈里取出数据 DirPath = stack.pop() # 目录下所有文件 num = 0 file_num = 0 FileList = os.listdir(DirPath) # 循环处理每个文件 for FileName in FileList: FileAbsPath = os.path.join(DirPath,FileName) if os.path.isfile(FileAbsPath) == True: print("是文件",FileAbsPath) num += 1 else: # print("是目录",FileAbsPath) stack.append(FileAbsPath) file_num += 1 print('当前文件数量:%s' % num, '当前文件夹数量%s' % file_num, '路径是:%s' % (FileAbsPath))