python中四舍五入的正確打開方式
(注意:下面的我也不清楚是否正確,我只是發表一下我的觀點)
對于簡單的舍入運算,使用內置的 round(value, ndigits) 函數即可強烈建議不要去深究,就直接得結果就好ndigiths可以為正數,也可以為負數,還可以為0,可以為空n:就是精確到第n位小數,對整數沒有影響,1為精確到十分位(注意:小數就是從十分位往后推的)-n:就是精確到整數位,-1為精確到十位,然后就是百位千位…有小數位就全舍掉,不管多大,但會保留一個為0的小數位0:精確到個位,但會保留一個為0的小數位為空:精確到個位,沒有小數位
其他還好就這個臨界點5很煩,我自己感覺得啊就我以前的理解要是將1.49精確到個位應該得到的是2對吧,是從右往左依次進行四舍五入吧,但python運行結果為1下面是小數部分的
>>> round(1.49)1>>> round(1.5)2>>> round(0.5)0>>> round(0.51)1>>> round(0.051,1)0.1>>> round(0.05,1)0.1>>> round(0.046,1)0.0>>> round(0.25,1)0.2>>> round(0.35,1)0.3>>> round(0.251,1)0.3
這里是整數
>>> round(1235,-1)1240>>> round(1245,-1)1240>>> round(1234.99,-1)1230.0>>> round(1245,-2)1200
這是我在網上查的對四舍五入的理解:1、同型算法:四舍六入五成雙。這里'四'是小于五的意思,'六'是大于五的意思,'五'是舍入位之后的尾數逢五的話看前一位,奇進偶不進。如1.25保留一位小數,因為2是偶數,所以是1.2。2、從統計學的角度,'四舍六入五成雙'比'四舍五入'要科學,它使舍入后的結果有的變大,有的變小,更平均。而不是像四舍五入那樣逢五就入,導致結果偏向大數。不清python用的是什么標準來進行四舍五入的我還去網上查了一下Python中對四舍五入的理解:在Python3中,round函數的取舍方式使用靠近最近和等距靠近偶數(ROUND_HALF_EVEN)策略不怎么理解,辣雞了呀不去想了,再想會把我以前對四舍五入的理解都搞混了,花費我很多時間,還是不懂,害,任它去吧還是想建議大家就直接使用,不要理解哦,如果你是大佬就當我沒說,嘿嘿
format()函數如果只想在輸出時按格式打印,使用format()函數就好了
>>> format(1.45,’0.1f’)’1.4’>>> format(1.35,’0.1f’)’1.4’python 向上取整ceil 向下取整floor 四舍五入round
#encoding:utf-8import math#向上取整print 'math.ceil---'print 'math.ceil(2.3) => ', math.ceil(2.3)print 'math.ceil(2.6) => ', math.ceil(2.6)#向下取整print 'nmath.floor---'print 'math.floor(2.3) => ', math.floor(2.3)print 'math.floor(2.6) => ', math.floor(2.6)#四舍五入print 'nround---'print 'round(2.3) => ', round(2.3)print 'round(2.6) => ', round(2.6)#這三個的返回結果都是浮點型print 'nnNOTE:every result is type of float'print 'math.ceil(2) => ', math.ceil(2)print 'math.floor(2) => ', math.floor(2)print 'round(2) => ', round(2)
運行結果:
到此這篇關于python中四舍五入的正確打開方式的文章就介紹到這了,更多相關python 四舍五入內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章: