Pythonで数値の絶対値を取得!abs()とmath.fabs()の違いと使い方
Pythonで数値の絶対値を取得する操作は、数学的な計算やデータの処理において頻繁に利用されます。Pythonには、この絶対値を取得するための2つの主要な方法があります。それが、組み込み関数の**abs()と、mathモジュールのmath.fabs()**です。この記事では、これら2つの関数の使い方と、それぞれの特徴、そしてどのような場合にどちらを使うべきかを詳しく解説します。
➕ abs()関数で絶対値を取得する
abs()関数はPythonに組み込まれているため、import文なしで直接使用できます。この関数は、与えられた数値の絶対値を返します。
abs()の基本的な使い方
abs()は、整数、浮動小数点数、さらには複素数に対しても動作します。
# abs()の基本的な使い方
print(abs(5)) # 5
print(abs(-5)) # 5
print(abs(3.14)) # 3.14
print(abs(-3.14)) # 3.14
abs()の戻り値の型
abs()関数は、引数の型に応じて戻り値の型が変わるという特徴があります。整数を渡せば整数を、浮動小数点数を渡せば浮動小数点数を返します。
# abs()の戻り値の型
print(type(abs(-10))) # <class 'int'>
print(type(abs(-10.5))) # <class 'float'>
🔬 math.fabs()関数で絶対値を取得する
math.fabs()関数は、mathモジュールに含まれています。これを使用するには、事前にimport mathが必要です。
math.fabs()の基本的な使い方
math.fabs()もまた、与えられた数値の絶対値を返します。
import math
# math.fabs()の基本的な使い方
print(math.fabs(5)) # 5.0
print(math.fabs(-5)) # 5.0
print(math.fabs(3.14)) # 3.14
print(math.fabs(-3.14)) # 3.14
math.fabs()の戻り値の型
math.fabs()の最大の特徴は、常に浮動小数点数(float型)を返す点です。たとえ整数を引数として渡しても、結果はfloat型になります。
import math
# math.fabs()の戻り値の型
print(type(math.fabs(-10))) # <class 'float'>
abs()とmath.fabs()、どちらを使うべきか?
| 特徴 | abs() | math.fabs() |
| 用途 | 整数、浮動小数点数、複素数など全般 | 浮動小数点数に特化 |
| import | 不要(組み込み関数) | 必要(import math) |
| 戻り値 | 引数の型に依存 | 常にfloat型 |
一般的な用途では、手軽に使える**abs()関数**で十分です。特に、引数の型を保ちたい場合や、複素数を扱う場合はabs()が適しています。
一方、**math.fabs()**は、結果を常に浮動小数点数として扱いたい場合や、mathモジュール内の他の数学関数と組み合わせて使用する場合に便利です。mathモジュールの関数は、通常、C言語の数学ライブラリに基づいているため、特定の数値計算でパフォーマンス上の利点がある場合もありますが、ほとんどの日常的なPythonプログラミングでは、この違いはほとんど影響しません。
まとめ
Pythonで数値の絶対値を取得するには、目的に応じて**abs()とmath.fabs()**を使い分けましょう。シンプルに絶対値が欲しいならabs()、結果を常にfloat型にしたい、あるいはmathモジュールの他の機能と連携させたい場合はmath.fabs()を選ぶのが良いでしょう。
■プロンプトだけでオリジナルアプリを開発・公開してみた!!
■AI時代の第一歩!「AI駆動開発コース」はじめました!
テックジム東京本校で先行開始。
■テックジム東京本校
「武田塾」のプログラミング版といえば「テックジム」。
講義動画なし、教科書なし。「進捗管理とコーチング」で効率学習。
より早く、より安く、しかも対面型のプログラミングスクールです。
<短期講習>5日で5万円の「Pythonミニキャンプ」開催中。
<月1開催>放送作家による映像ディレクター養成講座
<オンライン無料>ゼロから始めるPython爆速講座

