0

我正在使用 xlrd 读取 excel 文件并将数据写入文件。现在我面临的问题是,在文件中,我从 excel 中获取整数数据作为浮点数,而在我有类似 000123 的地方,它被截断为 123。

我想从单元格中读取值并以相同的格式将其写入文件中。有没有办法我可以在任何地方将excel单元格作为文本读取?

请提出正确的方法来做到这一点。

4

1 回答 1

0

您可以检查cell.ctype它是否是XL_CELL_TEXTXL_CELL_NUMBER其他。

XL_CELL_EMPTY, XL_CELL_DATE, XL_CELL_BOOLEAN, XL_CELL_ERROR, XL_CELL_BLANK(其他可能的细胞类型:)

如果您的单元格是类型,XL_CELL_TEXT那么您应该能够获得“000123”的值。

如果您的单元格是类型,XL_CELL_NUMBER那么您cell.value可能是“123”。可以在 Excel 工作表中看到的“00123”值可能是 Excel 工作表中设置的格式设置的结果。我想这个格式信息也应该可以从工作表中提取出来。提取格式信息后,您应该能够通过结合格式信息和原始数字值“123”来重现值“000123”。

但是,我不确定 xlrd 模块是否可以提取您需要的所有格式信息。

查阅文档:https ://secure.simplistix.co.uk/svn/xlrd/trunk/xlrd/doc/xlrd.html

或者源码来源:https ://github.com/python-excel/xlrd/blob/master/xlrd

于 2013-01-22T09:56:24.050 回答