根据文件名列表筛选满足条件的文件:
输入:
1)含有文件名列表的文件(Excel格式,如.xls格式);
如文件名列表中有name=2,name=3等
2)一个文件夹含有多个文件,即包含需要筛选的文件。
需要在文件中查找文件名满足name=2,name=3的两个文件,并提取出来放在其他文件夹中。
代码:
import os import numpy as np import pandas as pd import shutil file_path=r'./data' filename_path=r'./name.xls' filelist=os.listdir(file_path) file_name=pd.read_excel(filename_path) for file in filelist: print(file) for file in filelist: file_row=file_name.shape[0] olddir=os.path.join(file_path,file) for i in range(file_row): if str(file_name['name'][i]) in file: F=r"./data_filter" newdir=os.path.join(F,file) shutil.copy(olddir,newdir) else: continue print('done!')
参考资料:
https://www.cnblogs.com/lizitingxue/p/12607636.html
https://blog.csdn.net/qq_27601097/article/details/100541097
https://zhuanlan.zhihu.com/p/101330634