2
我正在使用openpyxl
来处理excel
.xlsx文件。文件中的某些列包含不同数字类型的单元格。我可以从Cell对象中获取number_type和value,但是找不到一个简单的方法来获得字符串。我花了几个小时阅读openpyxl的文档和来源,但什么都没发现。使用openpyxl获取单元格值的显示字符串
例如,我得到这个输出IPython中:
In [6]: ws['D4'].value
Out[6]: 0.02
In [7]: ws['D4'].data_type
Out[7]: 'n'
In [8]: ws['D4'].number_format
Out[8]: '0.0%'
In [9]: ws['D2'].number_format
Out[9]: u'yyyy"\u5e74"m"\u6708"d"\u65e5";@'
In [10]: ws['D2'].value
Out[10]: 42370L
我怎样才能像'2%'
和u'2016\u5e741\u67081\u65e5'
一个字符串?单元格可能是一些自定义的单元格格式,所以我更喜欢一般的方式。
我看到我必须自己格式化数据。我在MSDN上发现了一些规格,例如[this](https://msdn.microsoft.com/zh-cn/library/dd922181(v = office.12).aspx)。但他们主要是关于如何从文件中检索数据,而我仍然不确定如何格式化数据。我错过了什么吗?或者有关格式化单元格数据的细节超出了这些规格的范围? –
我还没有看过使用任何细节的格式。我们只使用数字格式来检查是否是日期或时间。您最好的选择是查看规范§18.8.30的相关部分。这应该允许你在Python中创建适合的东西。 –