Xlsxwriter,如何提高浮点数的小数精度?

Xlsxwriter, how to increase decimal precision of float number?

我为单元格创建了这种浮点格式:

floating_point_bordered = workbook.add_format({'num_format': '#,##0', 'border': 1})

worksheet.write(f'G{row}', position.price, floating_point_bordered)

当我生成 xlsx 文件时,我得到了以下结果:

然而这个浮点数的真实价值是:

如何在提高精度的情况下强制浮动单元格显示它们的值?

XlsxWriter 使用 Excel 的数字格式,因此您应该先在 Excel 中找出您需要的格式。

大概是#,##0.00。例如:

import xlsxwriter

workbook = xlsxwriter.Workbook("test.xlsx")
worksheet = workbook.add_worksheet()

price = 879.65421

floating_point_bordered = workbook.add_format({'num_format': '#,##0.00', 'border': 1})

worksheet.write(2, 1, price, floating_point_bordered)

workbook.close()

输出

但是,数字格式需要采用美国语言环境,“grouping/thousands”分隔符为“,”,“小数点”为“.”。 (点)。有关详细信息,请参阅 Number Formats in different locales 上 XlsxWriter 文档的这一部分。