用pandas处理数据偶然发现
s = pd.Series([-1, 1.2345, 100, -50])
s.round(3)
结果是
0 -1.000
1 1.234
2 100.000
3 -50.000
dtype: float64
发现1.2345四舍五入后的结果是1.234.理论上应该是1.235才对
后来测试发现,1.23451四舍五入后就是1.235
猜测是浮点数精度问题.python并不能精确地知道这一位是4还是5
详细解释见这篇文章: