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

最近看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 遍历子文件和所有子文件夹的代码实例 的全部内容, 来源链接: utcz.com/z/348458.html

回到顶部