Python实现批量复制指定格式文件到目标目录
本文介绍利用Python的os和shutil模块,通过遍历目录并比对文件后缀,实现将特定格式(如DNG)对应的JPG文件批量复制到指定文件夹的功能。代码通过标记数组筛选目标文件,并执行复制操作,适用于照片整理等场景。
周末外出登山拍摄了大量照片,这些照片同时保存为JPG和DNG两种格式。在使用Adobe Bridge筛选出需要保留的DNG格式照片后,为了免去手动挑选对应JPG文件的繁琐工作,我编写了一个Python小程序来自动完成筛选和复制任务,具体代码实现如下:
import os
import shutil
targetnames = os.listdir('D:\\Pictures\\照片\\2016年\\东灵山\\star')
filenames = os.listdir('D:\\Pictures\\照片\\2016年\\东灵山\\jpg')
flag=[]
for name in targetnames:
if '.DNG'==name[-4:]:
targetnames[targetnames.index(name)]=name[:-4]
flag.append(True)
else:
flag.append(False)
continue
for name in targetnames:
if flag[targetnames.index(name)]:
for sname in filenames:
if '.JPG' ==sname[-4:]:
if name==sname[:-4]:
shutil.copyfile('D:\\Pictures\\照片\\2016年\\东灵山\\jpg\\'+sname,'D:\\Pictures\\照片\\2016年\\东灵山\\fabu\\'+sname)
该程序调用了os和shutil两个核心模块。其中,os.listdir用于获取目标目录下的文件列表。假设star文件夹存放了手动筛选出的DNG格式图片,而jpg文件夹包含所有JPG格式图片。程序首先获取所有DNG文件名,并通过flag数组进行标记:若文件后缀为.DNG,则去除后缀名并标记为True;否则标记为False。随后遍历targetnames数组,若标记为True,则继续在filenames数组中查找名称匹配的JPG文件(后缀为.JPG)。一旦找到匹配项,便使用shutil.copyfile将文件复制到指定的输出文件夹,从而完成批量复制任务。
以上即为Python实现将文件复制到指定目录的完整示例,希望能为读者提供有益的参考,同时也欢迎大家继续支持本站。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













