原文:https://blog.csdn.net/lly1122334/article/details/80596026python
Python3的四捨五入round()函數坑爹?不,更科學!
Python2中,round()的結果就是咱們所理解的四捨五入,round(1.5)=2,round(2.5)=3。
Python3中,對round()函數有較大改動,例如round(1.5)=2,而round(2.5)卻等於2,只有round(2.6)纔等於3,這是爲何呢?函數
原來Python2中的round()是四捨五入,而到了3,round()就變成了「四捨六入五成雙」。
這讓我想起了大二時候的大物實驗,第一節就講了計數方法,其中印象最深入的就是這個「四捨六入五成雙」,它的做用是讓統計數據更公平,下降舍入的偏差。spa
五成雙的意思是,高位爲單數則進1湊成雙數,高位爲雙數則不進位。
.net
round() 方法返回浮點數x的四捨五入值。blog
如下是 round() 方法的語法:get
round( x [, n] )
返回浮點數x的四捨五入值。it
如下展現了使用 round() 方法的實例:class
#!/usr/bin/python3 print ("round(70.23456) : ", round(70.23456)) print ("round(56.659,1) : ", round(56.659,1)) print ("round(80.264, 2) : ", round(80.264, 2)) print ("round(100.000056, 3) : ", round(100.000056, 3)) print ("round(-100.000056, 3) : ", round(-100.000056, 3))
以上實例運行後輸出結果爲:語法
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