python 读取多个excel数据写入同一个excel中

一、将excel数据源存储到同一个excel的不同sheet 中

例如A.xlsx 中有test1,test2 两张sheet。B.xlsx中有test3 一张sheet,存储到C.xlsx中后,C有三张sheet,分别是test1,test2,test3

代码:

  1. file_directory = 'D:/test' # 存放要合并的数据源文件路径
  2. writer = pd.ExcelWriter('C:/Users/87596/Desktop/C.xlsx') # 合并的文件
  3. for root, dirs, files in os.walk(file_directory):
  4. for i in range(len(files)):
  5. file_path = os.path.join(root, files[i])
  6. sheet = pd.ExcelFile(file_path).sheet_names # 获取excel的所有sheet name
  7. for sh in sheet:
  8. base = pd.read_excel(file_path, sh)
  9. base.to_excel(writer, sh, index=False)
  10. writer.save()

二、将多个excel数据源存储到同一个excel的一个sheet中

注:多个excel的数据源的列名要相同

合并成:

代码:

  1. file_directory = 'D:/test' # 存放要合并的数据源文件路径
  2. # 存放每个excel数据
  3. excel_datas = []
  4. for root, dirs, files in os.walk(file_directory): # 第一个为起始路径,第二个为起始路径下的文件夹,第三个是起始路径下的文件。
  5. for file in files:
  6. file_path = os.path.join(root, file)
  7. re_ex = pd.read_excel(file_path) # 将excel转换成DataFrame
  8. excel_datas.append(re_ex)
  9. all_datas = pd.concat(excel_datas) # 将所有DataFrame合成一个
  10. all_datas.to_excel('C:\\Users\87596\Desktop\\C.xlsx', 'all',index=False)

完毕

(0)

相关推荐