在xlrd中读取科学数字

时间:2013-02-07 13:05:59

标签: python xlrd

非常简单的问题,但未能找到一个好的答案。

在Excel中,我正在生成需要自动读取的文件。它们由ID号读取,但我得到的格式是将其设置为文本。使用xlrd时,我得到以下格式:

  

5.5112E + 12

当我需要这种格式时:

  

5511195414392

实现这一目标的最佳方法是什么?我想避免使用xlwt,但如果有必要,我也可以在该过程中使用帮助

2 个答案:

答案 0 :(得分: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)

答案 1 :(得分:1)

我使用CSV模块来解决这个问题,因为它正确读取了单元格。