Python 3 教程
round() 方法返回浮點(diǎn)數(shù) x 的四舍五入值,準(zhǔn)確的說(shuō)保留值將保留到離上一位更近的一端(四舍六入)。
精度要求高的,不建議使用該函數(shù)。
以下是 round() 方法的語(yǔ)法:
round( x [, n] )
以下展示了使用 round() 方法的實(shí)例:
以上實(shí)例運(yùn)行后輸出結(jié)果為:
round(70.23456) : 70 round(56.659,1) : 56.7 round(80.264, 2) : 80.26 round(100.000056, 3) : 100.0 round(-100.000056, 3) : -100.0
看下官網(wǎng)給的一個(gè)例子:
>>> round(2.675, 2) 2.67
按我們的想法返回結(jié)果應(yīng)該是 2.68,可結(jié)果卻是 2.67,為什么?
這跟浮點(diǎn)數(shù)的精度有關(guān)。我們知道在機(jī)器中浮點(diǎn)數(shù)不一定能精確表達(dá),因?yàn)閾Q算成一串 1 和 0 后可能是無(wú)限位數(shù)的,機(jī)器已經(jīng)做出了截?cái)嗵幚?。那么在機(jī)器中保存的2.675這個(gè)數(shù)字就比實(shí)際數(shù)字要小那么一點(diǎn)點(diǎn)。這一點(diǎn)點(diǎn)就導(dǎo)致了它離 2.67 要更近一點(diǎn)點(diǎn),所以保留兩位小數(shù)時(shí)就近似到了 2.67。
其他擴(kuò)展