在xlrd中是否有一种不受限制的读取单元格格式的方式?
我正在读取.xlsx
文件,但'formatting_info'不是,也不会实现。
我的数据如下:
Brand A| Brand B| Brand C|
row1| 45% | 25% | 25% |
row2| 24% | 8% | 8% |
row3| 0.5 | 4 | 0.14 |
我需要读取excel中显示的数据。
要考虑的几个关键点:
xlsx
个文件,因此formatting_info=True
不是一个选项,因为它仅在xls
而不是xlsx
上可用我将如何解决这个问题?
答案 0 :(得分:-1)
首先,我想说一遍检查整个行,如果所有值均为0 <= x <= 1
,则可能是百分比。
如果要确定,则必须检查单元格的格式。
首先,在您的formatting_info=True
中添加xlrd.open_workbook(filepath)
,这样您就可以执行cell_format = book.xf_list[cell.xf_index]
。
这是源自Excel数据结构的XF format,但是您可以使用它检查具有两个属性的book.format_map[cell_format.format_key]
:type
和format_str
,它们的值定义为in the documentation(第174页,第5.49章“格式”)。