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


Posted in Python onDecember 21, 2016

最近看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 遍历子文件和所有子文件夹的代码实例

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Django框架下在视图中使用模版的方法
Jul 16 Python
Python分析学校四六级过关情况
Nov 22 Python
python3爬取数据至mysql的方法
Jun 26 Python
利用Django提供的ModelForm增删改数据的方法
Jan 06 Python
Python使用python-docx读写word文档
Aug 26 Python
python使用 __init__初始化操作简单示例
Sep 26 Python
详解Python在使用JSON时需要注意的编码问题
Dec 06 Python
Pandas时间序列重采样(resample)方法中closed、label的作用详解
Dec 10 Python
Python 脚本的三种执行方式小结
Dec 21 Python
Python 中如何写注释
Aug 28 Python
Python 的 f-string 可以连接字符串与数字的原因解析
Feb 20 Python
python开发人人对战的五子棋小游戏
May 02 Python
详解python中的json的基本使用方法
Dec 21 #Python
win系统下为Python3.5安装flask-mongoengine 库
Dec 20 #Python
python查看微信好友是否删除自己
Dec 19 #Python
python用reduce和map把字符串转为数字的方法
Dec 19 #Python
python虚拟环境virualenv的安装与使用
Dec 18 #Python
更改Ubuntu默认python版本的两种方法python-&gt; Anaconda
Dec 18 #Python
python 调用HBase的简单实例
Dec 18 #Python
You might like
最令PHP初学者们头痛的十四个问题
2007/01/15 PHP
php 定义404页面的实现代码
2012/11/19 PHP
PHP中使用Imagick实现各种图片效果实例
2015/01/21 PHP
从零开始学习jQuery (六) jquery中的AJAX使用
2011/02/23 Javascript
js格式化货币数据实现代码
2013/09/04 Javascript
js 剪切板的用法(clipboardData.setData)与js match函数介绍
2013/11/19 Javascript
jQuery瀑布流插件Wookmark使用实例
2014/04/02 Javascript
jquery 取子节点及当前节点属性值
2014/07/25 Javascript
javascript实现window.print()去除页眉页脚
2014/12/30 Javascript
JavaScript实现字符串与日期的互相转换及日期的格式化
2016/03/07 Javascript
第二次聊一聊JS require.js模块化工具的基础知识
2016/04/17 Javascript
详解堆的javascript实现方法
2016/11/29 Javascript
jquery实现百叶窗效果
2017/01/12 Javascript
EsLint入门学习教程
2017/02/17 Javascript
js通过keyCode值判断单击键盘上某个键,然后触发指定的事件方法
2017/02/19 Javascript
js实现3D图片展示效果
2017/03/09 Javascript
Vue实现搜索 和新闻列表功能简单范例
2018/03/16 Javascript
如何从零开始利用js手写一个Promise库详解
2018/04/19 Javascript
vue.js使用v-if实现显示与隐藏功能示例
2018/07/06 Javascript
vscode 配置vue+vetur+eslint+prettier自动格式化功能
2020/03/23 Javascript
解决vue组件销毁之后计时器继续执行的问题
2020/07/21 Javascript
vue 子组件和父组件传值的示例
2020/09/11 Javascript
详解Django中的权限和组以及消息
2015/07/23 Python
Python探索之Metaclass初步了解
2017/10/28 Python
Python操作MongoDB数据库的方法示例
2018/01/04 Python
使用PYTHON解析Wireshark的PCAP文件方法
2019/07/23 Python
IDLE下Python文件编辑和运行操作
2020/04/25 Python
css3实现小箭头各种图形效果
2020/07/08 HTML / CSS
在线购买澳大利亚设计师手拿包和奢华晚装手袋:Olga Berg
2019/03/20 全球购物
前处理班长职位说明书
2014/03/01 职场文书
管理提升方案
2014/06/04 职场文书
培训科主任岗位职责
2014/08/08 职场文书
如何写贫困证明申请书
2014/10/29 职场文书
离婚协议书怎么写
2015/01/26 职场文书
陕西导游词
2015/02/04 职场文书
乔布斯辞职信(中英文对照)
2015/05/12 职场文书