我有以下示例代码;
from openpyxl import load_workbook
print "Going to execute the script"
workbook = load_workbook("SampleExcel.xlsx", use_iterators = True)
for worksheet in workbook:
for row in worksheet.iter_rows():
for cell in row:
if(cell.internal_value != None):
print cell.internal_value
print "End of script execution"
我的excel文件中的某些单元格具有非小数值,如1,22,732等。但是cell.internal_value给出的这些值为1.0,22.0,732.0等。如何获取数字值,因为它看到了在excel文件中?
Ps:我使用的是openpyxl版本1.8.5。但是我已经通过将cell.internal_value
更改为cell.value
来尝试最新版本的openpyxl 2.1.0,同样存在同样的问题。
答案 0 :(得分:0)
您为什么使用cell.internal_value
?一般情况下,cell.value
会为您提供所需内容。如果openpyxl返回浮点数,那么这是因为数字在文件中存储如下。
答案 1 :(得分:0)
问题在于openpyxl包已经解决了。现在cell.value
按预期提供正确的值。