爲什麼以下四捨五入不是在Python 3個工作,但只有在Python 2?Python 3中的四捨五入問題
random_nums = np.array([-1, 0, 1, 2, 3])
probabilities = np.array([0.01, 0.3, 0.58, 0.1, 0.01])
target = dict(zip(random_nums, probabilities))
target = {k: round(v, 2) for k, v in target.items()}
out:
{-1: 0.01,
0: 0.29999999999999999,
1: 0.57999999999999996,
2: 0.10000000000000001,
3: 0.01}
如果您需要確切的花車/雙打舍入,轉換爲字符串輸出時做四捨五入。由於顯示的位數,這與所選浮點精度到達這些數字的距離相近。 –