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 文档的这一部分。
我为单元格创建了这种浮点格式:
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 文档的这一部分。