python读取多个sheet文件_PythonPandas excel文件如何一次读取所有工作表,并再次写入多个工作表?,pythonpandasexcel,一次性,全部,sheet,重新...

这篇博客介绍了如何使用pandas一次性读取Excel文件中的所有工作表,并将数据写入到新的Excel文件中,分别创建对应的工作表。通过`pd.read_excel()`和`pd.ExcelWriter()`函数,实现了对多个sheet的读写操作。
摘要由CSDN通过智能技术生成

关于如何一次性读取全部sheet,可看我之前写的一篇博客

本文重点讲述如何对同一个excel文件一次性写入多个sheet数据

代码示例:

import pandas as pd

writer = pd.ExcelWriter("新数据.xlsx")

sheet1Data = [] # 这个为要向Sheet1写入的数据

pd_look1 = pd.DataFrame(sheet1Data)

pd_look1.to_excel(writer, sheet_name="Sheet1")

sheet2Data = [] # 这个为要向Sheet2写入的数据

pd_look2 = pd.DataFrame(sheet2Data)

pd_look2.to_excel(writer, sheet_name="Sheet2")

# 最后保存写入,并释放

writer.save()

writer.close()

查看结果:

以上说明是确实生成了两个sheet,说明已实现。

完整代码如下:

import pandas as pd

# 读取excel 某个sheet下的数据,将其转化为列表数据,方便操作

def get_excel_sheet_data(filename, sheetname):

try:

df = pd.read_excel(filename, sheet_name=sheetname)

dataList = df.to_dict(orient='records') # 转换为列表

return dataList

except:

print('未能打开此文件,请确认文件名及路径是否正确')

return []

# 读取excel 所有sheet表名,并将其转化为列表返回

def get_excel_sheet_list(filename):

try:

df = pd.read_excel(filename, sheet_name=None)

return df.keys()

except Exception as e:

print(e)

return []

if __name__ == '__main__':

fileName = '数据.xlsx'

sheetList = get_excel_sheet_list(fileName) # 获取sheet列表

print(sheetList)

writer = pd.ExcelWriter("新数据.xlsx")

for i in sheetList: #遍历每个sheet名称

sheetData = get_excel_sheet_data(fileName, i) # 读取每个sheet下的数据

for j in sheetData: #取出每一项的数据

# do something

# 依次根据sheet名称对“新数据.xlsx”此文件多次写入Sheet

pd_look = pd.DataFrame(sheetData)

pd_look.to_excel(writer, sheet_name=i)

# 最后保存写入,并释放

writer.save()

writer.close()

如有帮助,记得点赞三连~

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值