如何使用openpyxl和列表为DataFrame添加额外Excel列标题?
实现方法
直接用worksheet.append()就能把myList作为首行列标题写入,之后再把DataFrame的内容接在下面即可,注意要跳过DataFrame自带的标题避免重复。完整代码示例如下:
import pandas as pd import openpyxl as pyxl from openpyxl.styles import Font from openpyxl.utils.dataframe import dataframe_to_rows # 假设mySQL1_details是你的5列DataFrame # mySQL1_details = pd.DataFrame(...) # 初始化工作簿和工作表 workbook = pyxl.Workbook() worksheet = workbook.active myList = ['a', 'b', 'c', 'KK', 'ee'] # 写入自定义列标题 worksheet.append(myList) # 可选:给标题设置加粗样式(和你导入的Font类对应) header_font = Font(bold=True) for cell in worksheet[1]: cell.font = header_font # 写入DataFrame数据(跳过自带标题) for row in dataframe_to_rows(mySQL1_details, header=False, index=False): worksheet.append(row) # 保存文件 workbook.save("output.xlsx")
关键说明
worksheet.append(myList):直接将列表作为一行写入工作表,这一行就是你需要的自定义列标题。dataframe_to_rows(..., header=False):因为已经手动写入了标题,这里关闭DataFrame自带的标题导出,防止出现重复标题行。- 样式设置是可选操作,如果你需要让标题更醒目,可以保留这段代码。
内容的提问来源于stack exchange,提问作者covershaker
相关产品推荐
相关产品推荐

