Pythonで数値を整数に丸める方法

Pythonのround()関数の基本

Pythonのround()関数は、指定した数値を最も近い整数に丸めるための組み込み関数です。この関数は以下のように使用します:

round(number, ndigits)

ここで、
numberは丸める対象の数値です。
ndigitsは丸める桁数を指定するオプションの引数です。この引数が省略された場合、round()関数は最も近い整数に丸めます。

例えば:

print(round(3.14159))  # 結果: 3
print(round(3.14159, 2))  # 結果: 3.14

上記の例では、最初のround()関数の呼び出しでは、3.14159が最も近い整数3に丸められます。次の呼び出しでは、3.14159が小数点以下2桁に丸められ、3.14が得られます。

round()関数は、数値を整数に丸めるだけでなく、指定した桁数に丸めることも可能で、そのための非常に便利なツールです。ただし、丸め方にはいくつかのルールがあり、それらを理解することが重要です。それについては次のセクションで詳しく説明します。

round()関数のパラメータと使い方

Pythonのround()関数は、2つの引数を取ることができます:numberndigitsです。

round(number, ndigits)
  • numberは丸める対象の数値です。
  • ndigitsは丸める桁数を指定するオプションの引数です。

ndigitsが省略された場合、round()関数は最も近い整数に丸めます。ndigitsが指定された場合、その数値は小数点以下の桁数を表します。例えば、ndigits=2は小数点以下2桁に丸めることを意味します。

以下にいくつかの例を示します:

print(round(3.14159))  # 結果: 3
print(round(3.14159, 2))  # 結果: 3.14
print(round(3.14159, 3))  # 結果: 3.142

また、ndigitsが負の数である場合、round()関数は10の倍数の位に丸めます。例えば、ndigits=-1は最も近い10の倍数に丸め、ndigits=-2は最も近い100の倍数に丸めます。

以下にいくつかの例を示します:

print(round(1234.5678, -1))  # 結果: 1230.0
print(round(1234.5678, -2))  # 結果: 1200.0

このように、Pythonのround()関数は非常に柔軟性があり、様々な丸め方が可能です。ただし、丸め方にはいくつかのルールがあり、それらを理解することが重要です。それについては次のセクションで詳しく説明します。

math.ceil()とmath.floor()の使い方

Pythonのmathモジュールには、数値を丸めるための他の関数も含まれています:math.ceil()math.floor()です。

import math

print(math.ceil(3.14159))  # 結果: 4
print(math.floor(3.14159))  # 結果: 3
  • math.ceil()関数は、指定した数値以上の最小の整数を返します。つまり、数値を「天井」方向(大きい方向)に丸めます。
  • math.floor()関数は、指定した数値以下の最大の整数を返します。つまり、数値を「床」方向(小さい方向)に丸めます。

これらの関数は、特定の方向に丸める必要がある場合に便利です。例えば、商品の価格を計算する際に、小数点以下を切り上げる(または切り捨てる)必要があるかもしれません。そのような場合、math.ceil()関数(またはmath.floor()関数)を使用できます。

ただし、これらの関数はround()関数とは異なり、常に特定の方向に丸めるため、その使用は注意が必要です。また、これらの関数はmathモジュールに含まれているため、使用する前にimport mathを記述する必要があります。これについては、Pythonのモジュールとインポートに関するドキュメンテーションを参照してください。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です