python操作excel一个sheet,其他sheet内容不变

用ExcelWriter

import openpyxl

from openpyxl import load_workbook

import pandas as pd

excel_file = 'D:/test.xlsx'

df = pd.DataFrame(pd.read_excel(excel_file,'Sheet1'))
df = df.loc[:['A','B']]#对目标Sheet进行处理,本案例作删除列处理,仅保留AB两列数据
wb = openpyxl.load_workbook(excel_file)   #加载已知excel文件
# 使用ExcelWriter() 对象调用to_excel()方法进行保存,这样原文件其他Sheet内容不变
writer = pd.ExcelWriter(excel_file) 
writer.book = wb
df.to_excel(writer,sheet_name='Sheet1',index=False)

writer.save()
writer.close()

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
可以使用 `openpyxl` 库来实现将 DataFrame 写入到指定的 Excel 文件的指定 Sheet ,同时保留其他 Sheet内容。 首先,需要安装 `openpyxl` 库,可以使用 pip 进行安装: ```python pip install openpyxl ``` 接下来,假设要将 DataFrame 写入到 `example.xlsx` 文件的 `Sheet2` ,可以按照以下步骤实现: 1. 导入需要的库 ```python import pandas as pd from openpyxl import load_workbook ``` 2. 读取 Excel 文件 ```python # 读取 Excel 文件 book = load_workbook('example.xlsx') ``` 3. 获取 Sheet 对象 ```python # 获取 Sheet 对象 writer = pd.ExcelWriter('example.xlsx', engine='openpyxl') writer.book = book writer.sheets = dict((ws.title, ws) for ws in book.worksheets) sheetname = 'Sheet2' ws = writer.sheets[sheetname] ``` 4. 将 DataFrame 写入到指定 Sheet ```python # 将 DataFrame 写入到指定 Sheet df.to_excel(writer, sheet_name=sheetname, index=False, header=False, startrow=ws.max_row+1) ``` 最后,记得关闭 writer 对象: ```python writer.save() writer.close() ``` 完整代码如下: ```python import pandas as pd from openpyxl import load_workbook # 读取 Excel 文件 book = load_workbook('example.xlsx') # 获取 Sheet 对象 writer = pd.ExcelWriter('example.xlsx', engine='openpyxl') writer.book = book writer.sheets = dict((ws.title, ws) for ws in book.worksheets) sheetname = 'Sheet2' ws = writer.sheets[sheetname] # 将 DataFrame 写入到指定 Sheet df.to_excel(writer, sheet_name=sheetname, index=False, header=False, startrow=ws.max_row+1) # 保存并关闭 writer 对象 writer.save() writer.close() ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值