7

質問が言うように。(切り捨てられた)文字列表現への/からの変換は、それらの精度に影響を与える可能性があります。しかし、ピクルスのような他の形式でそれらを保存すると、それらは読めなくなります(はい、私もこれが欲しいです)。

精度を失うことなく浮動小数点数をテキストに格納するにはどうすればよいですか?

4

3 に答える 3

8

バイナリまたはその累乗で格納します。

>>> (3.4).hex()
'0x1.b333333333333p+1'

>>> float.fromhex('0x1.b333333333333p+1')
3.4
于 2012-06-20T06:22:34.577 に答える
3

組み込み関数を使用することをお勧めしますrepr()。ドキュメントから:

repr(オブジェクト)->文字列

オブジェクトの正規の文字列表現を返します。ほとんどのオブジェクトタイプでは、eval(repr(object))==objectです。

于 2012-06-20T06:28:23.427 に答える
-1

pickle.dumpsそれを行うでしょうが、私も信じていfloat(str(floatval)) == floatvalます-少なくとも同じシステムでは...

于 2012-06-20T06:20:15.113 に答える