decimalモジュール
実数の文字列を読み込んで数値にするとき、floatで変換すると丸め誤差が発生してしまうことに気づく。精度が要求される計算はこれまでPythonでやったことはなかったので、対処方法を初めて調べた。
decimalというのがある。→ http://www.python.jp/doc/2.5/lib/module-decimal.html
- 使用例
>>> a="0.1234567890123456789" >>> a '0.1234567890123456789' >>> b=float(a) >>> from decimal import Decimal >>> c=Decimal(a) >>> print b 0.123456789012 >>> print c 0.1234567890123456789 >>>