【发布时间】:2021-04-06 10:07:56
【问题描述】:
我正在尝试使用 openpyxl 从包含公式的 xlsx 文件中读取值;但是,我注意到对于某些单元格,我得到了错误的值。
这是 XLSX 示例:
这是我得到的结果:
代码:
wb = openpyxl.load_workbook(excel_file, data_only=True)
# getting all sheets
sheets = wb.sheetnames
print(sheets)
# getting a particular sheet
worksheet = wb["Feuil1"]
print(worksheet)
# getting active sheet
active_sheet = wb.active
print(active_sheet)
# reading a cell
print(worksheet["A1"].value)
excel_data = list()
# iterating over the rows and
# getting value from each cell in row
for row in worksheet.iter_rows():
row_data = list()
for cell in row:
#cell.number_format='0.0########'
print(cell.number_format)
row_data.append(str(cell.value))
print(cell.value)
excel_data.append(row_data)
return render(request, 'myapp/index.html', {"excel_data":excel_data})
【问题讨论】:
-
有什么问题?该值是一个浮点数,但您可以将其四舍五入到所需的精度。
-
@CharlieClark well 53*1,2 应该正好等于 63,6,所以我想知道为什么我得到的结果是 63,59999,特别是因为我需要这些值准确到最高学历。