You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Pandas修改DataFrame指定列标题颜色并导出至Excel

Pandas实现指定列标题着色并导出Excel

要给list1中的列标题设置颜色,你需要借助Pandas的ExcelWriter结合xlsxwriter引擎实现单元格格式定制,以下是完整实现代码:

import pandas as pd

list1 = ["A","B","C"]
list2 = ["E","F","G"]
df = pd.DataFrame(columns=list1 + list2)

# 初始化ExcelWriter,指定xlsxwriter引擎
with pd.ExcelWriter("test.xlsx", engine="xlsxwriter") as writer:
    # 将DataFrame写入Excel,不保留行索引
    df.to_excel(writer, sheet_name="Sheet1", index=False)
    
    # 获取目标工作表对象
    worksheet = writer.sheets["Sheet1"]
    # 创建自定义格式:这里设置浅灰色背景+黑色字体+居中对齐,可按需调整
    target_header_format = writer.book.add_format({
        "bg_color": "#D3D3D3",
        "font_color": "#000000",
        "bold": True,
        "align": "center",
        "valign": "vcenter"
    })
    
    # 遍历所有列标题,给list1中的列应用自定义格式
    for col_num, col_name in enumerate(df.columns):
        if col_name in list1:
            worksheet.write(0, col_num, col_name, target_header_format)
        else:
            # 非目标列用默认表头格式(也可单独定义其他格式)
            worksheet.write(0, col_num, col_name)

关键说明:

  • 必须使用xlsxwriter引擎,它支持单元格格式的精细定制,未安装可执行pip install xlsxwriter完成安装
  • 格式参数可灵活调整:比如font_color控制字体颜色,bg_color控制背景色,还可添加边框、字号等样式
  • 通过enumerate遍历列的索引与名称,精准识别list1中的列并应用格式

内容的提问来源于stack exchange,提问作者Brayan Muñoz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 16:23:16