python根据文件名批量搜索文件
时间:2022-09-09 09:48:42|栏目:Python代码|点击: 次
需求场景,五百个文件里面,选取50个指定文件,放入新的文件夹里。
1、准备工作
1 安装python环境
可能会报错,并且pip install 这些没有的东西即可。
2 准备一个excel文件
filename.xlsx 写好要塞选出来的文件名字,如下图?
2、代码
# encoding: utf-8 import os import numpy as np import pandas as pd import shutil file_path='/Users/user/Desktop/Notes' #文件路径 filename_path='/Users/user/Desktop/filename.xlsx' #文件列表 filelist=os.listdir(file_path) #获取文件夹中的文件名称 file_name=pd.read_excel(filename_path) #读取所需文件列表 file_name['count']=0 #定义新的一列count,用于计数 for file in filelist: m=file_name.shape[0] #表格的行数 olddir=os.path.join(file_path,file) #每一个文件路径 for i in range(m): if str(file_name['name'][i]) in file: #寻找对应的文件名 F="/Users/user/Desktop/myfiles_filter/" #新文件夹名称(先建好) newdir=os.path.join(F,file) shutil.copy(olddir,newdir) #复制到新文件夹中 file_name['count'][i]=file_name['count'][i]+1 #计数 print(file) #打印出文件名,其实我是为了看它是不是在运行 else: continue file_name.to_excel('file_name_count.xlsx') #保存新的文件列表
然后在终端?
cd 文件所在的位置 python3 main.py
注意路径要写对,打开新的文件夹,就会发现50个文件已经写入了。同时会为你生出一个新的excel表-file_name_count.xlsx ,帮你看到导出结果。