python合并csv、excel等多个文件到一个excel中

文章目录

  • 一、python合并csv、excel等文件
    • 1.读取文件写入excel的sheet中
    • 2.将以上方法写成for循环
    • 3.合并同一文件夹下的多个csv文件到一个excel多个sheet

一、python合并csv、excel等文件

1.读取文件写入excel的sheet中

首先:导入所需的库import pandas as pd
其次:输入以下代码

#创建一个输出文件
writer = pd.ExcelWriter('E:/Test/test.xlsx')
 
data = pd.read_table('E:/Test/test1.csv',sep=',',encoding='GBK')
data.to_excel(writer,'data',index=False)
 
base = pd.read_excel('E:/Test/test2.xlsx','Sheet1')
base.to_excel(writer,'base',index=False)
  
base1 = pd.read_csv('E:/Test/test3.csv')
base1.to_excel(writer,'base1',index=False)
 
#保存
writer.save()

注:此方法用于csv文件个数较少时

2.将以上方法写成for循环

本代码仅就csv文件写入循环,如果有excel可以自行添加if进行逻辑判断文件类型后再写

#创建一个输出文件
writer = pd.ExcelWriter('E:/Test/test.xlsx')

#此处假定test1、test2、test3为三个本地csv文件
tags = ['test1','test2','test3']

#将多个csv文件写入同一个excel表多个sheet中
for tag_value in tags:
    data = pd.read_csv('E:/Test/'+tag_value+'.csv',encoding='utf-8')
    data.to_excel(writer,tag_value,index=False)

#保存
writer.save()

3.合并同一文件夹下的多个csv文件到一个excel多个sheet

import os
import pandas as pd

# 1. 获取一个要合并的文件夹的名称:
folder_name = "E:/Test/"

# 2. 获取那个文件夹中所有的文件名字:
file_names = os.listdir(folder_name)

#3.创建一个输出表
writer = pd.ExcelWriter('E:/Test/test.xlsx')

for file_name in file_names:
    data = pd.read_csv('E:/Test/'+file_name,encoding='utf-8')
    data.to_excel(writer,file_name,index=False)

#4.保存,并关闭当前文件
print('数据输出成功')
writer.save()
writer.close()

你可能感兴趣的:(python,python,csv,excel)