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 相关文章推荐
Python实现基于HTTP文件传输实例
Nov 08 Python
分析并输出Python代码依赖的库的实现代码
Aug 09 Python
Python+Selenium+PIL+Tesseract自动识别验证码进行一键登录
Sep 20 Python
利用Python如何生成便签图片详解
Jul 09 Python
对numpy中二进制格式的数据存储与读取方法详解
Nov 01 Python
Python制作exe文件简单流程
Jan 24 Python
python算法题 链表反转详解
Jul 02 Python
python matplotlib拟合直线的实现
Nov 19 Python
Python3+RIDE+RobotFramework自动化测试框架搭建过程详解
Sep 23 Python
Python+Xlwings 删除Excel的行和列
Dec 19 Python
基于PyTorch中view的用法说明
Mar 03 Python
python 实现定时任务的四种方式
Apr 01 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 Web开发MVC框架的Smarty使用说明
2013/04/19 PHP
深入PHP购物车模块功能分析(函数讲解,附源码)
2013/06/25 PHP
php操作xml并将其插入数据库的实现方法
2016/09/08 PHP
PHP中Laravel 关联查询返回错误id的解决方法
2017/04/01 PHP
PHP实现求连续子数组最大和问题2种解决方法
2017/12/26 PHP
js 第二代身份证号码的验证机制代码
2011/05/12 Javascript
javascript 进阶篇2 CSS XML学习
2012/03/14 Javascript
js实现两个值相加alert出来精确到指定位
2013/09/25 Javascript
js window.open弹出新的网页窗口
2014/01/16 Javascript
在JS中如何调用JSP中的变量
2014/01/22 Javascript
JQuery调用WebServices的方法和4个实例
2014/05/06 Javascript
Bootstrap布局组件教程之Bootstrap下拉菜单
2016/06/12 Javascript
微信小程序开发实战教程之手势解锁
2016/11/18 Javascript
使用Vue.js创建一个时间跟踪的单页应用
2016/11/28 Javascript
Vue.js实现多条件筛选、搜索、排序及分页的表格功能
2020/11/24 Javascript
Javascript 实现匿名递归的实例代码
2017/05/25 Javascript
Node.js应用设置安全的沙箱环境
2018/04/23 Javascript
VUE实现可随意拖动的弹窗组件
2018/09/25 Javascript
vue单文件组件lint error自动fix与styleLint报错自动fix详解
2019/01/08 Javascript
vue基础之v-bind属性、class和style用法分析
2019/03/11 Javascript
js回调函数仿360开机
2019/12/26 Javascript
Vue实现返回顶部按钮实例代码
2020/10/21 Javascript
python中reader的next用法
2018/07/24 Python
Python函数参数类型及排序原理总结
2019/12/19 Python
解决django FileFIELD的编码问题
2020/03/30 Python
浅谈Keras参数 input_shape、input_dim和input_length用法
2020/06/29 Python
HTML5网页录音和上传到服务器支持PC、Android,支持IOS微信功能
2019/04/26 HTML / CSS
移动端HTML5开发神器之vconsole详解
2020/12/15 HTML / CSS
如何启动时不需输入用户名与密码
2014/05/09 面试题
作为网站管理者应当如何防范XSS
2014/08/16 面试题
公务员转正鉴定材料
2014/02/11 职场文书
百货商场楼层班组长竞聘书
2014/03/31 职场文书
2014年学生会个人工作总结
2014/11/07 职场文书
2015年小学开学寄语
2015/02/27 职场文书
党员违纪检讨书
2015/05/05 职场文书
零基础学java之带返回值的方法的定义和调用
2022/04/10 Java/Android