python floatタイプの小数点以下の桁数を保存する方法


pythonは2桁の小数を保持します。

In [1]: a = 5.026

In [2]: b = 5.000

In [3]: round(a,2)
Out[3]: 5.03

In [4]: round(b,2)
Out[4]: 5.0

In [5]: '%.2f' % a
Out[5]: '5.03'

In [6]: '%.2f' % b
Out[6]: '5.00'

In [7]: float('%.2f' % a)
Out[7]: 5.03

In [8]: float('%.2f' % b)
Out[8]: 5.0

In [9]: from decimal import Decimal

In [10]: Decimal('5.026').quantize(Decimal('0.00'))
Out[10]: Decimal('5.03')

In [11]: Decimal('5.000').quantize(Decimal('0.00'))
Out[11]: Decimal('5.00')
ここには三つの方法があります。

round(a,2)

'%.2f' % a

Decimal('5.000').quantize(Decimal('0.00'))
出力が必要な結果は、2桁の小数が必要な場合、文字列形式は「%2 f'%a方式が最も良く、次にDecimalを使う。
注意すべき点:
1.Decimal整数または文字列パラメータに渡すことができますが、浮動小数点データではなく、浮動小数点データ自体が正確ではないからです。
2.Decimalはデータの総桁数を限定するためにも使用できます。
以上のpython floatタイプの小数点以下の桁数を保存する方法は小編集で皆さんに共有する内容です。参考にしていただければ幸いです。よろしくお願いします。