运行代码后我发现了一些问题
import xlsxwriter
import pandas as pd
workbook = xlsxwriter.Workbook('arrays.xlsx')
worksheet = workbook.add_worksheet()
array = [0.222333333333333, 0.048150492835172518, 'a12', 'a13', 'a14']
a=[array]
print('writedata=',a)
row = 0
for col, data in enumerate(a):
workbook.close()
workbook.close()
x = pd.read_excel('arrays.xlsx')
print('readdata=',x)`
写入读取就像数组
[0.222333333333333, 0.048150492835172518, 'a12', 'a13', 'a14']
但在看完这样的节目之后
readdata= Empty DataFrame
Columns: [0.222333333333333, 0.04815049283517252, a12, a13, a14]
Index: []
我如何只得到简单的回答
[0.222333333333333, 0.04815049283517252, a12, a13, a14]
答案 0 :(得分:0)
这只是浮点数精度的副作用。
Excel使用IEEE 754 Doubles来存储数字。这些数字的精确度是16位数,而您尝试存储的数字,0.048150492835172518,有17位有效数字。
如果将0.048150492835172518插入Excel中的单元格,保存文件,关闭文件,再次打开然后复制出数字,您将看到相同的行为。