【Python基礎】小数や整数を四捨五入するround関数

  • URLをコピーしました!
目次

round関数

前回、Pythonのpptxでパワーポイントに同じサイズの複数の画像を整列させて貼り付ける方法を紹介しました。

今回は小数や整数を四捨五入(偶数丸め)をするround関数の性質を紹介していきます。

それでは始めていきましょう。

小数を四捨五入して整数化

round関数の一つ目の機能として、小数を整数にすることがあります。

実は前に小数を整数にするときの各関数の性質をまとめて記事にしたことがあります。

ということで他の関数のことも知りたい方はこちらの記事をどうぞ。

今回はround関数だけに絞ってみていきましょう。

小数を整数化する場合は「round(値)」とします。

小数を整数にする際の性質ですが、正負に関係なくより近い整数に四捨五入されます。

a = 1.1
b = 1.4
c = 1.5
d = 1.9

print(round(a))
print(round(b))
print(round(c))
print(round(d))
print(round(-a))
print(round(-b))
print(round(-c))
print(round(-d))

実行結果
1
1
2
2
-1
-1
-2
-2

小数を四捨五入にして特定の桁数に変換

次に小数を四捨五入して特定の桁数に変換するという機能があります。

この場合は「round(値, 小数点以下の桁数)」とします。

a = 123456789.123456789

print(round(a, 1))
print(round(a, 2))
print(round(a, 3))
print(round(a, 4))
print(round(a, 5))
print(round(a, 6))
print(round(a, 7))
print(round(a, 8))
print(round(a, 9))
print(round(a, 10))

実行結果
123456789.1
123456789.12
123456789.123
123456789.1235
123456789.12346
123456789.123457
123456789.1234568
123456789.12345679
123456789.12345679
123456789.12345679

指定した小数の桁数の一つ下の値を四捨五入します。

また存在する小数点の桁数より大きな桁数を指定した場合は、最後の桁が四捨五入され、一桁少なくなった小数に変換されます。

整数の特定の桁数を四捨五入して変換

これは意外と知られていない気がするのですが、round関数は桁数にマイナスの値を与えると整数で与えられた桁数を四捨五入した値に変換するということができます。

つまり桁数に「-1」を与えた場合は1桁目を四捨五入した値に、「-2」を与えた場合は2桁目を四捨五入した値にします。

そしてそれ以下の桁数は「0」になります。

a = 123456789.123456789

print(round(a, -1))
print(round(a, -2))
print(round(a, -3))
print(round(a, -4))
print(round(a, -5))
print(round(a, -6))
print(round(a, -7))
print(round(a, -8))
print(round(a, -9))
print(round(a, -10))

実行結果
123456790.0
123456800.0
123457000.0
123460000.0
123500000.0
123000000.0
120000000.0
100000000.0
0.0
0.0

指定した桁数が存在する桁数よりも大きくなった場合は「0」になります。

次回は小数を10進数として正しく扱うことができるDecimalモジュールを紹介します。

ではでは今回はこんな感じで。

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

目次