Python基于ArcGis的工具开发中,我们常常需要获取文件夹里所有文件的文件名称,包含子文件夹中的文件,然后多文件批量进行处理
获取文件夹中扩展名相同的文件名称
第一步:先定义一个函数
第二步:获取文件夹所有文件
第三步:新建一存放文件夹名称的空列表
第四步:遍历所有文件
如果含有子文件夹,回调本函数
如果后缀名相同,添加到文件名称列表
下面提供一下实现的代码供大家参考!
获取文件里所有文件的名称:
def getfile_name(ml,hzm):
files=os.listdir(ml)
filelist=[]
for filename in files:
if os.path.isdir(ml+'/'+filename):
filelist.extend(getfile_name(ml+'/'+filename,hzm))#回调函数,对所有子文件夹进行搜索
elif os.path.isfile(ml+'/'+filename):
if filename.lower().endswith(hzm.lower()):#文件后缀名相同
filelist.append(filename)
arcpy.AddMessage("文件名称:",filename)
else:
arcpy.AddMessage("wzwj:%S",filename)
return filelist获取文件里所有文件的目录:
def getfile_fullpath_name(ml,hzm):
files=os.listdir(ml)
filelist=[]
for filename in files:
if os.path.isdir(ml+'/'+filename):
filelist.extend(getfile_path_name(ml+'/'+filename,hzm))#回调函数,对所有子文件夹进行搜索
elif os.path.isfile(ml+'/'+filename):
if filename.lower().endswith(hzm.lower()):#文件后缀名相同
filelist.append(ml+'/'+filename)
else:
arcpy.AddMessage("wzwj:%S",filename)
arcpy.AddMessage("文件目录:",filelist)
return filelist希望对大家有所帮助
本人初学者,如果有错误,希望大家评论区指出错误,多谢!!!!!!!!
版权声明:本文为weixin_68219957原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。