在xlrd中读取科学计数法数字
这个问题挺简单的,但我一直没找到好的答案。
在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)