在xlrd中读取科学计数法数字

2 投票
2 回答
1226 浏览
提问于 2025-04-17 15:06

这个问题挺简单的,但我一直没找到好的答案。

在Excel里,我生成了一些文件,这些文件需要被自动读取。读取的时候是通过一个ID号码来识别的,但我得到的格式是把它当成文本来处理。当我使用xlrd这个库时,得到的格式是:

5.5112E+12

而我需要的是这个格式:

5511195414392

有什么好的方法可以做到这一点吗?我希望能避免使用xlwt这个库,不过如果必须用的话,我也希望能得到一些入门的帮助。

2 个回答

1

我用了CSV模块来搞定这个问题,因为它能正确读取单元格里的内容。

4

试试这个:

import decimal

decimalNotation = decimal.Decimal(scientificNotationValueFromExcel)

我写了一个简单的程序来测试一下。它读取的Excel文件在第一个单元格里只有一个数据。

from xlrd import *
import decimal

workbook = open_workbook('test.xlsx')

sheet = workbook.sheet_by_index(0)

value = sheet.cell_value(0, 0)

print decimal.Decimal(value)

撰写回答