Python如何取小數點位數


簡單介紹

在寫一個數據平台的時候,發現需要進行通過率的統計,所以不可避免的出現小數的情況。至此,會出現無限小數,那么如何進行取舍呢?

 

實際操作

可以使用decimal模塊,decimal意思為十進制,這個模塊提供了十進制浮點運算支持。

常用方法

1.可以傳遞給Decimal整型或者字符串參數,但不能是浮點數據,因為浮點數據本身就不准確。

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

from decimal import *

Decimal.from_float(12.222)

# 結果為Decimal('12.2219999999999995310417943983338773250579833984375')

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

from decimal import *

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模塊


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM