python round 四捨五入踩坑

2022-09-19 06:51:10 字數 1524 閱讀 4369

說明:python round 函式並不是主觀意義上的理解四捨五入,也不全是「四捨六入五取偶」

一、四捨五入取整

注:觀察上述**執行結果,四捨六入基本沒什麼問題,主要是 .5 的情況,可以看到

1.5 在取捨(2 或 1)的時候,取了 2;

2.5 在取捨(3 或 2)的時候取了 2;

3.5 在取捨(4 或 3)的時候取了 4;

在取整數的情況下,round 函式是 四捨六入五取偶

二、試一下保留兩位小數

注:觀察以上結果,可以發現.455 的都入到 0.46了,但.465 只有 1.465 進到 .47 了,其他的沒入

進一步確認:

注:觀察以上結果,可以發現確實只有 1.465 進到 .47 了,其他的沒入

三、再來試一下保留一位小數

注:見鬼了,這是啥規律啊!??

換個寫法試試:

注:還是一樣,真見鬼了!!

四、試一下其他程式語言

五、結論

1、python、j**ascript、go 的 」四捨五入」 邏輯一致,但和我們日常理解的 四捨五入 不太一樣;

2、j**a 和 php 的 「四捨五入」 邏輯是比例正常(適合映象)的四捨五入;

3、python 如果需要正常的四捨五入,需要自己寫個函式來處理。

完。

qt的四捨五入 Qt(C )四捨五入

qt現在是四捨六入五成雙,要想四捨五入得自己想辦法,實現如下 include include double c1 3.435 double c2 3.445 double c3 3.4351 double c4 3.4451 double c5 3.445 qdebug qdebug qdebug ...

mysql 金額 四捨五入 mysql四捨五入

雲資料庫 mysql 雲資料庫 rds for mysql 是穩定可靠 可彈性伸縮的雲資料庫服務。通過雲資料庫能夠讓您幾分鐘內完成資料庫部署。雲端完全託管,讓您專注於應用程式開發,無需為資料庫運維煩惱 低至 0.24 小時起,買1年83折 雲資料庫mysql 雲資料庫 rds for mysql 是...

c 四捨五入

在處理一些資料時,我們希望能用 四捨五入 法實現,但是c 採用的是 四捨六入五成雙 的方法,如下面的例子,就是用 四捨六入五成雙 得到的結果 double d1 math.round 1.25,1 1.2double d2 math.round 1.24,1 1.2double d3 math.ro...