Pythonでは、数値を四捨五入するための組み込み関数であるround
関数があります。この関数を使えば、小数点以下の桁数を指定して、数値を四捨五入できます。
round関数とは
round
関数は、Pythonで標準で用意されている組み込み関数です。主に浮動小数点数を四捨五入したいときに使われます。
round関数の使い方
round
関数の基本的な使い方は以下のとおりです。
# 小数点第一位を四捨五入
print(round(1.5)) # output: 2
print(round(2.5)) # output: 2
1.5 は2に丸められ、 2.5 は偶数側の2に丸められます。
小数点の桁数を指定する方法
round
関数は、 第二引数に桁数を指定することで、任意の桁数で丸められます。
# 小数点第二位まで表示
print(round(1.456, 2)) # output: 1.46
ただし大きな桁数を指定した場合や、丸めた結果が表現可能な最も近い浮動小数点数となることに注意が必要です。
Decimalモジュールを使った四捨五入
PythonのDecimalモジュールは、正確な10進数の計算を可能にするためのものです。このモジュールを使用することで、浮動小数点数に関連する丸め誤差を避けられるようになります。
from decimal import Decimal
x = Decimal('0.1')
y = Decimal('0.2')
result = x + y
print(result) # 出力: 0.3
round関数の注意点
浮動小数点数や整数を指定した桁数で丸めるときに便利なround
関数ですが、注意点もあります。公式ドキュメントには以下のように書かれています。
f = 2.675
print(round(f, 2)) # 実行結果: 2.67
つまり、浮動小数点数は基数を2とする分数で表現されているため、最後の桁数が5の場合は正確に繰り上げがされませんので注意しましょう。.