import numpy as np
n=2data= numpy.
around
(a, n)
保留2位小數,n為3,則保留3位小數。
預設保留整數,計算方法是四捨五入。
這裡是一些例子
import numpy as np
>>> np.around([0.37, 1.64])
array([ 0., 2.])
>>> np.around([0.37, 1.64], decimals=1)
array([ 0.4, 1.6])
>>> np.around([.5, 1.5, 2.5, 3.5, 4.5]) # rounds to nearest even value
array([ 0., 2., 2., 4., 4.])
>>> np.around([1,2,3,11], decimals=1) # ndarray of ints is returned
array([ 1, 2, 3, 11])
>>> np.around([1,2,3,11], decimals=-1)
array([ 0, 0, 0, 10])
結果是四捨五入。
而python強轉型別int(1.12)是取整,丟掉後面的小數。
aaa=int(1.9)
print(aaa)
答案是1
下面再列舉一下python保留指定位數的小數方法:
f = 1.23456
print('%.4f' % f)
print('%.3f' % f)
print('%.2f' % f)
結果:
1.2346
1.235
1.23
這個方法會進行四捨五入
print(format(1.23456, '.2f'))
print(format(1.23456, '.3f'))
print(format(1.23456, '.4f'))
1.23
1.235
1.2346
這個方法會進行四捨五入
其實這個方法不推薦大家使用,查詢資料發現裡面的坑其實很多,python2和python3裡面的坑還不太一樣,在此簡單描述一下python3對應的坑的情況。
a = 1.23456
b = 2.355
c = 3.5
d = 2.5
print(round(a, 3))
print(round(b, 2))
print(round(c))
print(round(d))
1.235 # 1.23456最終向前進製了
2.35 # 2.355居然沒進製
4 # 最終3.5居然變為4了
2 # 最終2.5取值變為2
(1)通過上面的函式,看著是不是很暈,感覺round(x,n)函式是否進製也沒看出是啥規律
(2)round(x,n)函式中,是否進製或四捨五入,取決於n位以及n+1位小數的值
(3)只有當n+1位數字是5的時候,容易混淆,如果n為偶數,則n+1位數是5,則進製,例如round(1.23456,3)最終變為1.235
(4)如果n為奇數,則n+1位是數5,那不進製,例如round(2.355,2),最終為2.35
(5)如果n為0,即沒有填寫n的時候,最終結果與上面相反,即整數部分為偶數的時候,小數字5不進製,例如(round(2.5)變為2)。
(6)整數部分為奇數的時候,小數字5進製。(round(3.5)變為4)
————————————————
(1)可以放大指定的倍數,然後取整,然後再除以指定的倍數。
#保留三位小數截斷 python3
print(int(1.23456 * 1000) / 1000 )
(2) 使用字串擷取,擷取小數點後指定的位數 總結C 保留小數字數
本文向大家介紹c 保留小數字,可能好多人還不了解c 保留小數字,沒有關係,看完本文你肯定有不少收穫,希望本文能教會你更多東西。1.簡單的例子 system.globalization.numberformatinfo provider new system.globalization.numberf...
JS中保留小數字數
一 1.2.tofixed 2 浮點數進行四捨五入設定指定小數字的數值 二 2.tofixed 2 整數嘗試,但是在js中會被認為是物件名,以至於無法使用 三 1.2 tofixed 2 由於tofixed方法是針對number型別的,所以string型別的即使能夠轉換成數字,也不能使用這個方法 四...
MSSQL 保留小數字數的方法
round 語法 round numeric expression length function 那麼用到四捨五入並且保留小數點時我們肯定會首選round函式,如果欄位的資料型別是decimal 18,10 時那麼四捨五入後還會有很多0出現。引數說明 numeric expression 是精確或...