每天收N个Excel/CSV文件手动合并?批量读取+自动汇总,100个文件也秒级处理。场景:目录下多个日期命名Excel,批量读取→合并→标记来源→汇总。核心:glob 路径匹配、pd.concat 批量合并、os.path 文件名提取。
① 生成多文件测试数据(自动创建3个Excel)
import pandas as pdimport osimport numpy as npos.makedirs("data_files", exist_ok=True)for i in range(1,4): df = pd.DataFrame({ "order_id": [f"O{i}_{j}" for j in range(1,21)], "amount": np.random.randint(100,5000,20) }) df.to_excel(f"data_files/2025040{i}_sales.xlsx", index=False)print(" 3个文件已生成到 data_files 目录")
查看生成文件目录
查看数据情况
自动生成 3 个模拟的 Excel 销售数据文件,
order_id 订单编号 ,amount 是销售金额② 核心代码
这段代码实现了统计每个文件中的总销售金额
import pandas as pdimport glob# 批量读取所有Excelfiles = glob.glob("data_files/*.xlsx")df_list = []for f in files: temp = pd.read_excel(f) temp["file_name"] = f.split("/")[-1] # 标记来源 df_list.append(temp)df = pd.concat(df_list, ignore_index=True)result = df.groupby("file_name")["amount"].sum().reset_index()print("批量汇总结果:")print(result)
结果展示
总结
批量文件处理是办公自动化核心,100行内搞定重复劳动,效率提升百倍。