Python如何保留float型別小數點後3位

佚名 發表於 2022-05-17
Python

  保留float型別小數點後3位

  float

  查詢持倉資料,數字貨幣交易所一般給出的是float型別,且小數點十幾位,為了展示便捷,只保留小數點後3位。

  float資料型別,保留小數點的方式有三種

  一、round()

>> x = 3.897654326
>> round(x, 3)
3.898
>> x = 3.000000
>> round(x, 3)
3.0

  round函式自動四捨五入;自動去掉多餘的0

  二、'%.3f'%x

>> x = 3.897654326
>> '%.3f' % x
3.898
>> x = 3.000000
>> '%.3f' % x
3.000

  '%.3f'%x自動四捨五入;保留多餘的0

  三、decimal

> from decimal import decimal
>> decimal('3.897654326').quantize(decimal('0.000'))
3.898
>> decimal('3.000000000').quantize(decimal('0.000'))
3.000

  小數點後的位數

  第一種方法

 = 8.8888
使用round 函式
b = round(a,2) # 保留小數點後兩位小數,會四捨五入
b 就等於8.89

  第二種方法

= "%.2f"%a # 也會四捨五入

  第三種方法

ret1 = decimal("88.001").quantize(decimal("0.00"))
print(ret1)

  以上為個人經驗,希望能給大家一個參考,也希望大家多多支援