现有多张xls表,放入python程序所在的文件夹,我的是test
?打开一个表是这样子的:
好,现在要把几张表上下拼接成一张表,且表头不重复,代码如下:?
取数表 | 多个xls表或多个xlsx表 | 目标表 | 一个xlsx表 | 应用场景 | xls表所有数据汇总到一个表,表头不重复 | 引用模块 | os,pandas | 序号 | 代码 | 1 | # 导入模块 | 2 | import os, pandas as pd | 3 | def get_files(path): | 4 | ? ? fs = [] | 5 | ? ? for root, dirs, files in os.walk(path): | 6 | ? ? ? ? for file in files: | 7 | ? ? ? ? ? ? fs.append(os.path.join(root,file)) | 8 | ? ? return fs | 9 | def merge(): | 10 | ? ? # 批量表所在文件夹路径 | 11 | ? ? files = get_files('./费用流水/') | 12 | ? ? arr = [] | 13 | ? ? for i in files: | 14 | ? ? ? ? arr.append(pd.read_excel(i)) | 15 | ? ? # 目标文件的路径 | 16 | ? ? writer = pd.ExcelWriter('./流水汇总.xlsx') | 17 | ? ? pd.concat(arr).to_excel(writer,'sheet1',index=False) | 18 | ? ? writer.save() | 19 | if __name__ == '__main__': | 20 | ? ? merge() |
运行结果如下:
?原始表换成多张xlsx格式的表也是一样的, 代码不需要变更,直接适用,亲测有效
|