• 技术文章 >后端开发 >Python教程

    Python 遍历子文件和所有子文件夹的代码实例

    高洛峰高洛峰2017-02-23 16:46:00原创900
    最近看ECShop到网上找资料,发现好多说明ECShop的文件结构不全面,于是想自己弄个出来。但这是个无聊耗时的工作,自己就写了个Python脚本,可以递归遍历目录下的所有文件和所有子目录,并将结果记录到一个.xml文件中(因为想使用Notepad++的代码折叠功能,所以使用.xml文件)。

    下面就是Python代码:

    # -*- coding: cp936 -*- 
     
    ############################################# 
    #  Written By Qian_F            #    
    #  获取文件路径列表,并写入到当前目录生成test.txt # 
    ############################################# 
     
    import os 
     
    def getfilelist(filepath, tabnum=1): 
      simplepath = os.path.split(filepath)[1] 
      returnstr = simplepath+"目录<>"+"\n" 
      returndirstr = "" 
      returnfilestr = "" 
      filelist = os.listdir(filepath) 
      for num in range(len(filelist)): 
        filename=filelist[num] 
        if os.path.isdir(filepath+"/"+filename): 
          returndirstr += "\t"*tabnum+getfilelist(filepath+"/"+filename, tabnum+1) 
        else: 
          returnfilestr += "\t"*tabnum+filename+"\n" 
      returnstr += returnfilestr+returndirstr 
      return returnstr+"\t"*tabnum+"</>\n" 
           
     
    path = raw_input("请输入文件路径:") 
    usefulpath = path.replace('\\', '/') 
    if usefulpath.endswith("/"): 
      usefulpath = usefulpath[:-1] 
    if not os.path.exists(usefulpath): 
      print "路径错误!" 
    elif not os.path.isdir(usefulpath): 
      print "输入的不是目录!" 
    else: 
      filelist = os.listdir(usefulpath) 
      o=open("test.xml","w+") 
      o.writelines(getfilelist(usefulpath)) 
      o.close() 
      print "成功!请查看test.xml文件"

    执行该Python脚本后会在当前目录生成test.xml文件,使用Notepad++打开(以ANSI编码方式)就可以看到指定目录的文件结构了。下面是我生成的ECShop下upload目录的文件结构部分截图:

    Python 遍历子文件和所有子文件夹的代码实例

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持PHP中文网。

    更多Python 遍历子文件和所有子文件夹的代码实例相关文章请关注PHP中文网!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:使用Python3 编写简单信用卡管理程序 下一篇:详解python中的json的基本使用方法
    20期PHP线上班

    相关文章推荐

    精选22门好课,价值3725元,开通VIP免费学习!• Python数据类型简介之numpy• python虚拟环境配置与管理• 实例分享8个Python自动化脚本• 总结分享Python冷门的技巧• 聊聊Python中列表和字典前加星号(**)
    1/1

    PHP中文网