Python如何保留float類(lèi)型小數(shù)點(diǎn)后3位

2022-05-17 17:03:43 來(lái)源:互聯(lián)網(wǎng)作者:佚名 人氣: 次閱讀 6 條評(píng)論

保留float類(lèi)型小數(shù)點(diǎn)后3位float查詢持倉(cāng)數(shù)據(jù),數(shù)字貨幣交易所一般給出的是float類(lèi)型,且小數(shù)點(diǎn)十幾位,為了展示便捷,只保留小數(shù)點(diǎn)后3位。float數(shù)據(jù)類(lèi)型,保留小數(shù)點(diǎn)的方式有三種一、roun...

  保留float類(lèi)型小數(shù)點(diǎn)后3位

  float

  查詢持倉(cāng)數(shù)據(jù),數(shù)字貨幣交易所一般給出的是float類(lèi)型,且小數(shù)點(diǎn)十幾位,為了展示便捷,只保留小數(shù)點(diǎn)后3位。

  float數(shù)據(jù)類(lèi)型,保留小數(shù)點(diǎn)的方式有三種

  一、round()

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

  round函數(shù)自動(dòng)四舍五入;自動(dòng)去掉多余的0

  二、'%.3f'%x

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

  '%.3f'%x自動(dòng)四舍五入;保留多余的0

  三、decimal

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

  小數(shù)點(diǎn)后的位數(shù)

  第一種方法

 = 8.8888
使用round 函數(shù)
b = round(a,2) # 保留小數(shù)點(diǎn)后兩位小數(shù),會(huì)四舍五入
b 就等于8.89

  第二種方法

= "%.2f"%a # 也會(huì)四舍五入

  第三種方法

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

  以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持