python根据多个文件名批量查找文件

yipeiwu_com6年前Python基础

本文实例为大家分享了python根据多个文件名批量查找文件的具体代码,供大家参考,具体内容如下

老板给了我一个文件列表,让我在一堆文件中挑出来,他要的文件有500多个,一堆文件有上千个,而且给的是关键词,不是完整的文件名。

我先做了类似的文件测试一下,一个名为filename的excel表

又做了一个文件夹

接下来运行代码

import os
import numpy as np
import pandas as pd
import shutil

file_path='/home/disk/yh_test/myfiles' #文件路径
filename_path='/home/disk/yh_test/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="/home/disk/yh_test/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')  #保存新的文件列表

运行结果如下:

新的文件夹myfiles_filter中文件是这样的:

在这里插入图片描述有关键字的文件都被复制过来了。

count

新的列表里就有关键字出现的次数。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python面向对象程序设计之私有属性及私有方法示例

本文实例讲述了Python面向对象程序设计之私有属性及私有方法。分享给大家供大家参考,具体如下: 如果有一个对象,当需要对其进行修改属性时,有2种方法: (1)对象名.属性名=数据---...

python3+PyQt5使用数据库窗口视图

python3+PyQt5使用数据库窗口视图

能够为数据库数据提供的最简单的用户界面之一就是窗体,窗体可以一次性呈现出来自同一记录的各个域。本文通过python3+pyqt5改写实现了python Qt gui 快速变成15章的例子...

对python:循环定义多个变量的实例详解

对python:循环定义多个变量的实例详解

我们可能会时长碰到这样一个场景,计算得到一个非固定值,需要根据这个值定义相同数量个变量。 实现方式的核心是exec函数,exec函数可以执行我们输入的代码字符串。 exec函数的简单例子...

详解Python3.6安装psutil模块和功能简介

一、psutil模块 1. psutil是一个跨平台库,能够轻松实现获取系统运行的进程和系统利用率(包括CPU、内存、磁盘、网络等)信息。它主要应用于系统监控,分析和限制系统资源及进程的...

Python实现的井字棋(Tic Tac Toe)游戏示例

Python实现的井字棋(Tic Tac Toe)游戏示例

本文实例讲述了Python实现的井字棋(Tic Tac Toe)游戏。分享给大家供大家参考,具体如下: 说明 用python实现了井字棋,整个框架是本人自己构思的,自认为比较满意。另外,...