【python】追加写入excel

输出文件运行前(有两张表,"表1"和"Sheet1"):


目录


一:写入单表(删除所有旧工作表,写入新表)

python 复制代码
import pandas as pd

df1 = pd.DataFrame({
    'A': [1, 1, 1],
    'B': [1, 1, 1]
})

df2 = pd.DataFrame({
    'C': [0, 0, 0],
    'D': [0, 0, 0]
})
# 无ExcelWriter直接写入
df1.to_excel('output.xlsx', sheet_name='Sheet1',index=None)
df2.to_excel('output.xlsx', sheet_name='Sheet2',index=None)

运行后(原"表1""Sheet1"删除,写入"Sheet2"):

二:写入多表(删除所有旧工作表,写入新表)

python 复制代码
import pandas as pd

df1 = pd.DataFrame({
    'A': [1, 1, 1],
    'B': [1, 1, 1]
})

df2 = pd.DataFrame({
    'C': [0, 0, 0],
    'D': [0, 0, 0]
})
# 使用 ExcelWriter 写入不同的 sheet
with pd.ExcelWriter('output.xlsx') as writer:
    df1.to_excel(writer, sheet_name='Sheet1',index=None)
    df2.to_excel(writer, sheet_name='Sheet2',index=None)

或者

python 复制代码
import pandas as pd

df1 = pd.DataFrame({
    'A': [1, 1, 1],
    'B': [1, 1, 1]
})

df2 = pd.DataFrame({
    'C': [0, 0, 0],
    'D': [0, 0, 0]
})
# 使用 ExcelWriter 写入不同的 sheet
writer=pd.ExcelWriter('output.xlsx')
df1.to_excel(writer, sheet_name='Sheet1',index=None)
df2.to_excel(writer, sheet_name='Sheet2',index=None)
writer.close()
'''
excelwriter()相当于open()函数
writer赋值时要像打开文件那样进行上下文管理,需要调用close()来关闭保存文件。
否则使用with语句,不需要调用close()。

'''

运行后(原"表1""Sheet1"删除,写入新"Sheet1""Sheet2"):

三:追加写入(保留原有表格,旧表第一行覆盖写入新数据)

python 复制代码
import pandas as pd

df1 = pd.DataFrame({
    'A': [1, 1, 1],
    'B': [1, 1, 1]
})

df2 = pd.DataFrame({
    'C': [0, 0, 0],
    'D': [0, 0, 0]
})
# 使用 ExcelWriter 写入不同的 sheet
with pd.ExcelWriter('output.xlsx',mode='a', engine='openpyxl', if_sheet_exists="overlay") as writer:
    df1.to_excel(writer, sheet_name='Sheet1',index=None)
    df2.to_excel(writer, sheet_name='Sheet2',index=None)

运行后(原"表1""Sheet1"保留,在"Sheet1"写入新数据,新建"Sheet2"):


四:追加写入(保留原有表格,旧表最后一行不覆盖写入新数据)

python 复制代码
import pandas as pd

df1 = pd.DataFrame({
    'A': [1, 1, 1],
    'B': [1, 1, 1]
})

df2 = pd.DataFrame({
    'C': [0, 0, 0],
    'D': [0, 0, 0]
})
# 使用 ExcelWriter 写入不同的 sheet
with pd.ExcelWriter('output.xlsx',mode='a', engine='openpyxl', if_sheet_exists="overlay") as writer:
    df1.to_excel(writer, sheet_name='Sheet1',index=None, startrow=3, startcol=0)
    df2.to_excel(writer, sheet_name='Sheet2',index=None)

运行后(原"表1""Sheet1"保留,在"Sheet1"写入新数据,新建"Sheet2"):


相关推荐
hboot14 小时前
AI工程师第五课 - 大语言模型基础
python·llm·fastapi
AOwhisky15 小时前
Python 学习笔记(第一期与第二期)——基础语法——核心知识点自测与详解
开发语言·笔记·python·学习·云原生·运维开发
STLearner16 小时前
ICML 2026 | LLM×Graph论文总结[1]【图基础模型,文本属性图,多模态属性图,图对齐,图提示学习,关系深度学习
论文阅读·人工智能·python·深度学习·学习·机器学习·数据挖掘
习明然17 小时前
我的本地化AI项目(三)
人工智能·python·electron·c#·avalonia
喜欢的名字被抢了17 小时前
Python实战:SQLAlchemy ORM与FastAPI项目集成
开发语言·python·sql·教程·fastapi
夏季疯19 小时前
读论文:STARS 是什么结构?一个统一的歌声自动标注框架
python
光测实验室20 小时前
3种Python降噪算法实测:我把处理速度提升了20倍
python
AOwhisky20 小时前
Python 学习笔记(第三期)——流程控制核心知识点自测与详解
开发语言·笔记·python·学习·云原生·运维开发·流程控制
爱吃提升20 小时前
Python桌面自动化PyAutoGUI完整实战教程:模拟鼠标键盘、窗口操作、图形识别自动化
python·自动化·计算机外设
花花无缺21 小时前
Windows 定时执行 Python 脚本方案
python·操作系统·命令行