python 筛选包含需求字段表头的文件名称
import os
import pandas as pd
# 需要筛选的文件夹,可以包含多个同类型的文件
file_path = 'C:/新建文件夹/'
os.chdir(file_path)
# 包含的字段名称
metric_fields = [‘name’,‘age’,‘garde’]
# 遍历当前文件夹下面所有的文件
for file in os.listdir():
file_name = file.split('-')[1]
csv_path = file_path + file
df = pd.read_csv(csv_path, encoding='gbk')
file_header_list = df.columns.to_list()
for field in metric_fields:
# 与表头字段进行对比,返回文件名称
if field in file_header_list:
print(file_name)
文件夹中包含的表格内容如下:
1、学生姓名表
id | student |
---|---|
1 | 张三 |
2 | 李四 |
3 | 王五 |
2、学生信息表
id | name | age |
---|---|---|
1 | 张三 | 22 |
3、学生成绩表
id | course | garde |
---|---|---|
1 | python | 100 |
程序运行结果:
学生信息表
学生成绩表
当我需要筛选表头包含有name,age,garde字段的文件时,就需要单个文件点开,去查看。如果文件很多,表头很多时,这会是一项费时费力的工作。通过本程序自动提取文件表头,识别需要的字段,返回你需要的文件名,就大大降低了工作量。
如有什么更好的,更优化的方法,欢迎交流。