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连接sql server乱码的解决方法
Jan 28 Python
python学习 流程控制语句详解
Jun 01 Python
Python中shutil模块的常用文件操作函数用法示例
Jul 05 Python
Python对象类型及其运算方法(详解)
Jul 05 Python
Python之自动获取公网IP的实例讲解
Oct 01 Python
TensorFlow实现卷积神经网络
May 24 Python
在Python中合并字典模块ChainMap的隐藏坑【推荐】
Jun 27 Python
django数据模型(Model)的字段类型解析
Dec 25 Python
Python 爬虫批量爬取网页图片保存到本地的实现代码
Dec 24 Python
如何使用Python实现一个简易的ORM模型
May 12 Python
python异步的ASGI与Fast Api实现
Jul 16 Python
用python基于appium模块开发一个自动收取能量的小助手
Sep 25 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/02 PHP
php之对抗Web扫描器的脚本技巧
2008/10/01 PHP
php 分页函数multi() discuz
2009/06/21 PHP
PHP数据流应用的一个简单实例
2012/09/14 PHP
快速解决PHP调用Word组件DCOM权限的问题
2017/12/27 PHP
PHP实现生成模糊图片的方法示例
2017/12/21 PHP
PHP的imageTtfText()函数深入详解
2021/03/03 PHP
Prototype使用指南之string.js
2007/01/10 Javascript
jQuery的运行机制和设计理念分析
2011/04/05 Javascript
基于JavaScript 声明全局变量的三种方式详解
2013/05/07 Javascript
html+javascript实现可拖动可提交的弹出层对话框效果
2013/08/05 Javascript
jquery中加载图片自适应大小主要实现代码
2013/08/23 Javascript
jQuery下的动画处理总结
2013/10/10 Javascript
jQuery 1.9.1源码分析系列(十)事件系统之绑定事件
2015/11/19 Javascript
AngularJS使用ngMessages进行表单验证
2015/12/27 Javascript
jQuery获取复选框被选中数量及判断选择值的方法详解
2016/05/25 Javascript
代码详解Vuejs响应式原理
2017/12/20 Javascript
javascript实现最长公共子序列实例代码
2018/02/05 Javascript
Vue+webpack+Element 兼容问题总结(小结)
2018/08/16 Javascript
js利用递归与promise 按顺序请求数据的方法
2019/08/30 Javascript
Vue插槽_特殊特性slot,slot-scope与指令v-slot说明
2020/09/04 Javascript
vue实践---根据不同环境,自动转换请求的url地址操作
2020/09/21 Javascript
ant design vue 表格table 默认勾选几项的操作
2020/10/31 Javascript
Python中functools模块函数解析
2017/03/12 Python
python3+PyQt5实现文档打印功能
2018/04/24 Python
在Python中字典根据多项规则排序的方法
2019/01/21 Python
python重试装饰器的简单实现方法
2019/01/31 Python
如何在Python3中使用telnetlib模块连接网络设备
2020/09/21 Python
吉列剃须刀英国官网:Gillette英国
2019/03/28 全球购物
什么是数据库锁?Oracle中都有哪些类型的锁?
2015/08/21 面试题
销售找工作求职信
2013/12/20 职场文书
民事诉讼代理授权委托书
2014/10/11 职场文书
积极心理学课程心得体会
2016/01/22 职场文书
简单了解 MySQL 中相关的锁
2021/05/25 MySQL
手把手教你使用TensorFlow2实现RNN
2021/07/15 Python
Golang入门之计时器
2022/05/04 Golang