Python XlsxWriter - 数字格式

在 Excel 中,设置单元格格式 菜单的数字选项卡 中提供了数字数据的不同格式设置选项。

格式化单元格

要使用 XlsxWriter 控制数字的格式,我们可以使用 set_num_format() 方法或定义 add_format() 方法的 num_format 属性 .

f1 = wb.add_format()
f1.set_num_format(FormatCode)
#or
f1 = wb.add_format('num_format': FormatCode)

Excel 有许多预定义的数字格式。 它们可以在如上图所示的数字选项卡的自定义类别下找到。 例如,带两个小数点和逗号分隔符的数字的格式代码为#,##0.00。


示例

在下面的示例中,数字 1234.52 被格式化为不同的格式代码。

import xlsxwriter

wb = xlsxwriter.Workbook('hello.xlsx')
ws = wb.add_worksheet()
ws.set_column('B:B', 30)

num=1234.52

num_formats = (
   '0.00',
   '#,##0.00',
   '0.00E+00',
   '##0.0E+0',
   '₹#,##0.00',
)
ws.write('A1', 'Formatted Number')
ws.write('B1', 'Format')

row = 1
for fmt in num_formats:
   format = wb.add_format({'num_format': fmt})
   ws.write_number(row, 0, num, format)
   ws.write_string(row, 1, fmt)
   row += 1
wb.close()

输出

格式化数字以及使用的格式代码如下图所示 −

格式化数字