亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python保留指定位數(shù)小數(shù)的5種方法總結

 更新時間:2023年08月31日 10:37:15   作者:Threetiff  
很多小伙伴在學習python的時候可能會遇到對數(shù)據(jù)進行格式化輸出的需求,其中最常見的需求為保留幾位小數(shù),這篇文章主要給大家介紹了關于Python保留指定位數(shù)小數(shù)的5種方法,需要的朋友可以參考下

1 %.2f’ %[變量] 【四舍五入】

可以在print()打印處使用,也可以賦值給新的變量進行輸出

# 四舍五入方法
a = 2.345566
print('%.4f'% a)
# 2.3456
print('%.3f'% a)
# 2.346
print('%.2f'% a)
# 2.35
# 賦值給新的變量
c = '%.2f'% a
print(c)
# 2.35

2 format函數(shù)【四舍五入】

可以在print()打印處使用,也可以賦值給新的變量進行輸出

# 四舍五入方法
a = 2.345566
print(format(a, '.4f'))
# 2.3456
print(format(a, '.3f'))
# 2.346
# 賦值給新的變量
c = format(a, '.4f')
print(c)
# 2.3456

3 直接截斷【不進行四舍五入】

3.1 先放大指定倍數(shù),后取整,后再除以指定倍數(shù)

1 保留三位小數(shù):先×100,后int,后÷100

a = 2.345566
c = int(a * 100) / 100
print(c)
# 2.34

2 保留三位小數(shù):先×1000,后int,后÷1000

a = 2.345566
c = int(a * 1000) / 1000
print(c)
# 2.345

3 保留四位小數(shù):先×10000,后int,后÷10000

a = 2.345566
c = int(a * 10000) / 10000
print(c)
# 2.3455

3.2 轉為字符串進行字符串截取,截取小數(shù)點后指定的位數(shù)【不進行四舍五入】【不推薦有點麻煩】

a = 2.345566
# 進行分割
a_0 = str(a).split('.')[0]
a_1 = str(a).split('.')[1]
# 截取小數(shù)點后的
a_point = a_1[0:2] # 截取2位
# 字符串連接
a_new = a_0 + '.' + a_point
# 將string類型轉換為float類型
a_new_number = float(a_new)
print(a_new_number)
# 2.34

4 round()函數(shù)【精確的四舍五入,但無法保證相同的小數(shù)位數(shù)】

round(number, ndigits=None)
返回小數(shù)點后四舍五入到ndigits精度的數(shù)字。如果ndigits被省略或為None,它將返回與其輸入最近的整數(shù)。
注意:round()對于float的行為可能令人驚訝:例如,round(2.675,2)給出的是2.67,而不是預期的2.68。這不是一個錯誤:這是因為大多數(shù)十進制分數(shù)【decimal fractions】不能精確地表示為浮點值。

5 Numpy數(shù)組 np.set_printoptions【四舍五入】

只可以打印處使用,不可以賦值

np.set_printoptions(precision=3, suppress=True, formatter={})
precision:保留幾位小數(shù),后面不會補0
supress:對很大/小的數(shù)都不使用科學計數(shù)法 (True)
formatter:強制格式化,后面會補0

import numpy as np
a = np.random.random(3)
print('before set precision: \n',a)
np.set_printoptions(precision=3, suppress=True)
print('after set precision: \n',a)
np.set_printoptions(formatter={'float': '{: 0.3f}'.format})
print('after set formatter: \n',a)
# before set options:
# [ 0.05856348 0.5400039 0.70000603]
# after set precision:
# [ 0.059 0.54 0.7]
# after set formatter:【強制補0】
# [ 0.059 0.540 0.700]

6 總結

第 1、2、4三種方法可以進行四舍五入,可以對變量賦值
第3種方法不可以進行四舍五入,可以對變量賦值
第5種方法可以進行四舍五入,但不可以賦值

學習鏈接:

到此這篇關于Python保留指定位數(shù)小數(shù)的5種方法的文章就介紹到這了,更多相關Python保留指定位數(shù)小數(shù)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論