python写入excel多个sheet表 以及追加sheet表
python写入excel多个sheet表 以及追加sheet表写入多个sheet表在excel追加sheet表可将不同DataFrame分别写入指定Sheet如初始写入箱_4和箱_2并通过封装函数append_to_excel支持动态追加新Sheet到现有文件自动处理Sheet名重复问题如重复时生成新数据表_副本1写入多个sheet表importpandasaspd# 创建 ExcelWriter 对象指定引擎为 openpyxlwithpd.ExcelWriter(汇总.xlsx,engineopenpyxl)aswriter:# 将原始数据写入 Sheet 名 原始数据df.to_excel(writer,sheet_name箱_4,indexFalse)# 将去重后数据写入 Sheet 名 去重数据df.to_excel(writer,sheet_name箱_2,indexFalse)print(数据已保存到不同 Sheet 中)在excel追加sheet表importpandasaspdimportosdefappend_to_excel(df,file_path,sheet_name): 将 DataFrame 追加到 Excel 文件的新 Sheet 中自动处理 Sheet 名重复问题 参数: df: 要保存的 DataFrame file_path: Excel 文件路径 (e.g., data.xlsx) sheet_name: 新 Sheet 的名称 # 判断文件是否存在决定写入模式modeaifos.path.exists(file_path)elsewwithpd.ExcelWriter(file_path,engineopenpyxl,modemode)aswriter:# 处理 Sheet 名重复ifmodea:existing_sheetswriter.book.sheetnames# 获取现有 Sheet 名列表new_sheet_namesheet_name counter1whilenew_sheet_nameinexisting_sheets:new_sheet_namef{sheet_name}_副本{counter}counter1sheet_namenew_sheet_name# 更新为唯一 Sheet 名df.to_excel(writer,sheet_namesheet_name,indexFalse)print(f数据已追加到 Sheet: {sheet_name})# 使用示例dfpd.DataFrame({数据列:[1,2,3]})append_to_excel(df,汇总.xlsx,新数据表)