为什么 xlsxwriter 在我的单元格开头写 '

Why does xlsxwriter write ' at the start of my cells

这是我的代码:

import xlsxwriter

# Create a workbook and add a worksheet.
workbook = xlsxwriter.Workbook('Expenses01.xlsx')
worksheet = workbook.add_worksheet()

# Some data we want to write to the worksheet.


# Write a total using a formula.
worksheet.write_string(0, 0, '99999999001')
worksheet.write_string(0, 1, '99999999001')
worksheet.write_string(0, 2, '99999999001')
worksheet.write_string(0, 3, '99999999001')
worksheet.write_string(0, 4, '99999999001')
worksheet.write_string(0, 5, '99999999001')

workbook.close()

我正在使用

Ubuntu 20.04.2 LTS

XlsxWriter==3.0.1

LibreOffice 计算器 版本:6.4.7.2

在 Libre office cells 中包含这个: '99999999001 - 为什么 XlsxWriterr 在我的单元格开头添加撇号?

您在 Libreoffice 中的号码前的撇号仅表示单元格格式为 text 类型。它实际上不是单元格内容的一部分。有关详细信息,请参阅此 link:https://forum.openoffice.org/en/forum/viewtopic.php?f=9&t=49046

仅供演示,在 Microsoft Excel 中打开生成的文件时,那里没有撇号:

将其解释为字符串,而不是数字。

如果值为“000123”,默认情况下,XLSX 会将其视为数字,您将看到“123”作为单元格值。缺少前导“零”。

如果前缀为撇号 ',它将被视为文本,您将看到原始输入“000123”。前导零不会消失。

带前缀的撇号符号非常有用,尤其是当您要存储电话 phone 号码、社会身份号码、区号、会员编号或任何前导零对其数据识别至关重要的产品代码时。