pandas dataframe写入excel的多个sheet页面

pandas根据dataframe生成一个excel文件:

Dataframe保存新文件

直接把dataframe格式的数据保存到多个sheet页程序如下:

py 复制代码
excel_file = "导出excel文件.xlsx"
if os.path.exists(excel_file):
    os.remove(excel_file)

# 生成一个新文件
with pd.ExcelWriter(excel_file) as writer:
    pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="sheet1")
    pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="sheet2")
    pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="sheet3")

追加写入:

首先需要指定使用openpyxl,然后使用pd.ExcelWriter(excel_file, engine='openpyxl', mode='a')打开文件,在文件中直接追加即可:

py 复制代码
with pd.ExcelWriter(excel_file, engine='openpyxl', mode='a') as writer:
    pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="追加sheet1")
    pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="追加sheet2")

完整示例

py 复制代码
import pandas as pd
import numpy as np
import os


def main():
    excel_file = "导出excel文件.xlsx"
    if os.path.exists(excel_file):
        os.remove(excel_file)
   
    # 生成一个新文件
    with pd.ExcelWriter(excel_file) as writer:
        pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="sheet1")
        pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="sheet2")
        pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="sheet3")
    
    # 在已有的文件中添加
    with pd.ExcelWriter(excel_file, engine='openpyxl', mode='a') as writer:
        pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="追加sheet1")
        pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="追加sheet2")


if __name__ == '__main__':
    main()
相关推荐
东京老树根4 小时前
Excel 技巧20 - 在Excel中输入内容时自动添加边框(★★)
笔记·学习·excel
qq_407110926 小时前
Libreoffice实现Word、Excel在线预览
java·word·excel
hmywillstronger6 小时前
【Excel】【VBA】Reaction超限点筛选与散点图可视化
excel
高克莱14 小时前
【Java实现 通过Easy Excel完成对excel文本数据的读写】
java·spring boot·excel
upcdxlq14 小时前
java poi excel 富文本粗体无效
excel
CodeCraft Studio17 小时前
【实用技能】如何借助Excel处理控件Aspose.Cells,使用 C# 锁定 Excel 中的单元格
开发语言·c#·excel
csdn_aspnet20 小时前
在 ASP.NET Core 6.0 Web API 中将 Excel 文件数据上传并保存到数据库中
数据库·excel·webapi·.net6.0
quweiie1 天前
tp8读取mysql导出excel
android·mysql·excel
惊鸿一博1 天前
宏_wps_宏修改word中所有excel表格的格式_设置字体对齐格式_删除空行等
word·excel·wps
如意机反光镜裸1 天前
批量提取多个 Excel 文件内指定单元格的数据
excel