亲宝软件园·资讯

展开

python3中布局背景颜色代码分析

小妮浅浅 人气:0

我们想要给某个模块着重突出,以便引起大家注意的时候,通常给那个模块的背景颜色换亮一点。这种情况的操作多见于我们想要突出表格中的某个数据,或是某一项的名称。

在python3中设置布局背景颜色需要通过代码进行更改,相信很多小伙伴对于这样的设置还比较陌生,接下来我们看看布局背景颜色代码该如何写吧。

更改前

代码如下

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页设置好后再保存

成果:

改过的名称是不是更加鲜明了呢,这样也有助于我们对于表格所要表达的关键点有了更深刻的了解。

加载全部内容

相关教程
猜你喜欢
用户评论