在工作中经常会遇到在一大堆文件中将某些文件挑出来,保存到另一个文件夹中。
import xlrd
import os
import shutil
#excel表地址
xladd = r'E:\异常\异常文件.xls'
#大集合文件的文件夹地址
sumfiles = r'D:\咨询\\低-497'
#小集合文件的文件夹地址
selectedfiles = r'E:\异常\异常PDF'
workbook = xlrd.open_workbook(xladd)
worksheet = workbook.sheet_by_name('pages')
sourcenames = os.listdir(sumfiles)
targetnames = []
for a in range(0,114): #注意需要指定读取Excel中第几行到第几行的数据
targetnames.append(worksheet.cell(a,0,).value)
i = 0
for tname in targetnames:
for sname in sourcenames:
if tname == sname[:-4]: #注意把后缀名截掉
shutil.copyfile(sumfiles + "\\" + sname, selectedfiles + "\\" + sname)
i += 1
print(i) #最后打印一下复制了多少个
注意需要复制的那些文件名是放在Excel表的第一列的,没有表头,直接放到第一列。