Python如何取小數點位數

簡單介紹

在寫一個數據平臺的時候,發現須要進行經過率的統計,因此不可避免的出現小數的狀況。至此,會出現無限小數,那麼如何進行取捨呢?html

 

實際操做

能夠使用decimal模塊,decimal意思爲十進制,這個模塊提供了十進制浮點運算支持。orm

經常使用方法htm

1.能夠傳遞給Decimal整型或者字符串參數,但不能是浮點數據,由於浮點數據自己就不許確。blog

2.要從浮點數據轉換爲Decimal類型ci

from decimal import *字符串

Decimal.from_float(12.222)get

# 結果爲Decimal('12.2219999999999995310417943983338773250579833984375')string

3.經過設定有效數字,限定結果樣式:io

from decimal import *form

getcontext().prec=6

Decimal(1)/Decimal(7)

# 結果爲Decimal('0.142857'),六個有效數字

4.四捨五入,保留幾位小數

from decimal import *

Decimal('50.5679').quantize(Decimal('0.00'))

# 結果爲Decimal('50.57'),結果四捨五入保留了兩位小數

5.Decimal 結果轉化爲string

from decimal import *

str(Decimal('3.40').quantize(Decimal('0.0')))

# 結果爲'3.40',字符串類型

 
效果

 

參考:

decimal模塊

相關文章
相關標籤/搜索