Python3中使用Pandas设置Excel布局背景颜色详解

Theo
Theo
发布时间:2026-10-14 | 5人浏览过
原创

本文介绍如何在Python3中使用Pandas库为Excel表格设置布局背景颜色。通过定义特定的格式对象(如bg_format),可以高亮显示关键数据或标题,提升表格可读性。文章提供了完整的代码示例,展示如何遍历Sheet页并应用背景色、字体及对齐方式等样式设置。

Python3 Excel背景色设置概述

当需要突出显示某个模块以引起注意时,通常的做法是将其背景颜色调整为更明亮的色调。这种操作常见于需要强调表格中的特定数据项或名称的场景。

在Python3中,设置布局背景颜色需要通过编写代码来实现。对于不熟悉此操作的用户,接下来将详细介绍如何编写相关的背景颜色设置代码。

修改前的效果如下:

Python3 Excel背景色设置代码实现

具体实现代码如下:


import pandas as pd

 
def set_foramt():
 # 1.多个sheet页
 sheet_list = ['Sheet1', 'Sheet2', 'Sheet3', 'Sheet4', 'Sheet5']
 # 2.要写入的excel路径
 writer = pd.ExcelWriter('test_new.xlsx')
 workbook = writer.book
 # 3.循环遍历sheet取数据
 for sheet in sheet_list:
 df1 = pd.read_excel('test.xlsx', sheet_name=sheet)
 # 4.设置格式
 fmt = workbook.add_format({"font_name": u"微软雅黑"})
 percent_fmt = workbook.add_format({'num_format': '0.00%'})
 amt_fmt = workbook.add_format({'num_format': '#,##0.00'})
 border_format = workbook.add_format({'border': 1})
 bg_format = workbook.add_format({'bold': True, 'font_name': u'微软雅黑', 'bg_color': 'yellow',
  'align': 'center', 'valign': 'vcenter', 'font_color': 'black',
  'font_size': 10})
 date_fmt = workbook.add_format({'bold': False, 'font_name': u'微软雅黑', 'num_format': 'yyyy-mm-dd',
 'align': 'center', 'valign': 'vcenter'})
 # 5.写入excel
 l_end = len(df1.index) + 1
 df1.to_excel(writer, sheet_name=sheet, encoding='utf8', header=df1.columns.values.tolist(),
  index=False, startcol=0, startrow=0)
 worksheet1 = writer.sheets[sheet]
 # 6.生效单元格格式
 # 设置行高
 worksheet1.set_row(0, 20, fmt) # 从第0行开始,行高为20,格式为fmt
 # 设置列宽
 worksheet1.set_column('A:F', 20, fmt) # 从A列到F列,行高为10,格式为fmt
 # 加边框
 worksheet1.conditional_format(f'A1:F{l_end}', {'type': 'no_blanks', 'format': border_format})
 # A1单元格到F(索引值), 'type': 'no_blanks'指非空的单元格加格式
 # 设置背景色
 worksheet1.conditional_format('A1:F1', {'type': 'no_blanks', 'format': bg_format})
 worksheet1.conditional_format(f'B2:B{l_end}', {'type': 'no_blanks', 'format': bg_format})
 # 合并日期单元格
 worksheet1.merge_range(f'A2:A{l_end}', df1['日期'][0], date_fmt)
 # 设置数值格式千分位,并保留两位小数
 worksheet1.conditional_format(f'C2:F{l_end}', {'type': 'no_blanks', 'format': amt_fmt})
 # 7.所有的sheet页设置好后再保存

修改后的效果展示:

经过调整后的名称是否更加醒目?这种处理方式有助于更清晰地传达表格中的关键信息,便于用户快速捕捉重点。

以上是关于Python3中布局背景颜色代码分析的详细内容,如需了解更多相关技巧,请继续关注本站的其他文章。

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表