スポンサーリンク

【Python】mathモジュールの便利な使い方!

記事内に広告が含まれています。

mathモジュールは数学的な計算をサポートする機能が豊富で、様々な場面で役立ちます。

以下、いくつかの便利な関数を例に紹介します。

スポンサーリンク

基本的な定数の利用

mathモジュールには、一般的な数学定数が含まれています。

  • math.pi
    円周率(π)
  • math.e
    ネイピア数(自然対数の底)
import math

print(math.pi)  # 3.141592653589793
print(math.e)   # 2.718281828459045
スポンサーリンク

四捨五入と切り捨て・切り上げ

  • math.ceil(x)
    xを切り上げ
  • math.floor(x)
    xを切り捨て
  • math.trunc(x)
    小数部分を切り捨てて整数部分を返す
print(math.ceil(3.4))  # 4
print(math.floor(3.4)) # 3
print(math.trunc(3.4)) # 3

累乗・平方根・対数

  • math.sqrt(x)
    xの平方根を求める
  • math.pow(x, y)
    xのy乗を計算
  • math.log(x, base)
    xの対数(任意の底で計算可能、baseを省略すると自然対数)
print(math.sqrt(16))     # 4.0
print(math.pow(2, 3))    # 8.0
print(math.log(10, 10))  # 1.0
print(math.log(math.e))  # 1.0

三角関数と逆三角関数

角度の計算が必要な場合には以下の関数を使用します。

角度はラジアン単位で入力することに注意してください。

  • math.sin(x)
    xの正弦
  • math.cos(x)
    xの余弦
  • math.tan(x)
    xの正接
  • math.asin(x)math.acos(x)math.atan(x)
    逆三角関数
print(math.sin(math.pi / 2))  # 1.0
print(math.cos(math.pi))      # -1.0
print(math.tan(math.pi / 4))  # 1.0

角度変換

math.radians(deg)math.degrees(rad)を使用して、度とラジアンの変換ができます。

angle_deg = 90
angle_rad = math.radians(angle_deg)
print(angle_rad)  # 1.5707963267948966

angle_rad = math.pi / 2
angle_deg = math.degrees(angle_rad)
print(angle_deg)  # 90.0

数学的な条件分岐に便利な関数

  • math.isclose(a, b, rel_tol=1e-9)
    aとbがほぼ等しいかどうかを判定します(浮動小数点の誤差を考慮して近似値として判定)。
  • math.isnan(x)
    xがNaN(Not a Number)かどうかを判定します。
  • math.isinf(x)
    xが無限大かどうかを判定します。
print(math.isclose(0.1 + 0.2, 0.3))  # True
print(math.isnan(float('nan')))      # True
print(math.isinf(float('inf')))      # True

組み合わせや順列を計算する

  • math.factorial(x)
    xの階乗を計算
  • math.comb(n, k)
    n個の中からk個を選ぶ組み合わせの数
  • math.perm(n, k)
    n個の中からk個を並べる順列の数
print(math.factorial(5))  # 120
print(math.comb(5, 2))    # 10
print(math.perm(5, 2))    # 2

まとめ

mathモジュールは、数学的な演算のサポートを提供しており、四捨五入や三角関数から、組み合わせや順列まで幅広く利用できます。

スポンサーリンク
Python
著者SNS
タイトルとURLをコピーしました