当前位置:主页 > 软件编程 > Python代码 >

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 ,帮你看到导出结果。

总结

您可能感兴趣的文章:

相关文章