小数点以下1桁または2桁の浮動小数点数のテキストファイルを読んでいます。私はfloat()
ラインをフロートに変換するために使用しており、ValueError
それが失敗した場合はを上げます。すべてのフロートをリストに保存しています。印刷するときは、小数点以下2桁の浮動小数点で印刷したいと思います。
-3、65、9、17、1の番号のテキストファイルがあるとします。それぞれを読み、floatに変換して、リストに追加します。Python 2では、を呼び出すとfloat(-3.65)
が返されます-3.65
。ただし、Python 3では、float(-3.65) returns
-3.6499999999999999`で精度が低下します。
[-3.6499999999999999, 9.1699999999999999, 1.0]
フロートのリストを小数点以下2桁だけで印刷したい。の行に沿って何かを実行'%.1f' % round(n, 1)
すると、文字列が返されます。文字列ではなく、浮動小数点数の2つの小数点すべてのリストを返すにはどうすればよいですか?これまでのところ、を使用して丸めまし[round(num, 2) for num in list]
たが、の代わりに小数点/精度を設定する必要がありround()
ます。