Pythonで絶対値を扱う10の方法

Python言語を用いて絶対値を扱う方法を図解したイメージPython

 

【当サイトはコードのコピペ・商用利用OKです】

このサービスはASPや、個別のマーチャント(企業)による協力の下、運営されています。

記事内のコードは基本的に動きますが、稀に動かないことや、読者のミスで動かない時がありますので、お問い合わせいただければ個別に対応いたします。

この記事では、プログラムの基礎知識を前提に話を進めています。

説明のためのコードや、サンプルコードもありますので、もちろん初心者でも理解できるように表現してあります。

基本的な知識があればカスタムコードを使って機能追加、目的を達成できるように作ってあります。

※この記事は、一般的にプロフェッショナルの指標とされる『実務経験10000時間以上』を満たすプログラマ集団によって監修されています。

はじめに

初めてPythonを学んで、絶対値の計算方法について理解したいと思っている方へ向けて、この記事を書いています。

ここでは、10の異なるサンプルコードを通じて、絶対値の理解とその活用方法を段階的に解説していきます。

●Pythonとは

Pythonは、1991年にグイド・ヴァンロッサムによって開発されたプログラミング言語です。

シンプルな文法と高い可読性が特徴で、初心者から研究者まで幅広いユーザーに利用されています。

特に、データ解析や機械学習、Web開発などの分野で活用されています。

●Pythonの絶対値とは

絶対値とは、数値の大小を問わず、その数値から原点までの距離を表すものです。

つまり、正の数の絶対値はそのままの数値、負の数の絶対値は符号を反転させた数値になります。

Pythonでは、この絶対値を計算するための組み込み関数abs()を提供しています。

●Pythonで絶対値を扱う基本的な方法

○組み込み関数abs()の使用

Pythonで絶対値を計算する最も基本的な方法は、組み込み関数abs()を使用することです。

この関数は引数として一つの数値を取り、その数値の絶対値を返します。

print(abs(-10))  # 10
print(abs(10))   # 10

このコードではabs()関数を使って絶対値を計算する例を紹介しています。

この例では、負の数-10と正の数10の絶対値をそれぞれ計算しています。

●Pythonで絶対値を扱うサンプルコード10選

ここからは、Pythonで絶対値を扱うさまざまな方法について、10のサンプルコードを通じて学んでいきます。

○サンプルコード1:整数の絶対値計算

整数の絶対値を計算するには、abs()関数に整数を引数として渡すだけです。

この関数は整数の絶対値を返します。

print(abs(-5))  # 5

このコードでは、abs()関数を使って整数-5の絶対値を計算しています。

結果として5が出力されます。

○サンプルコード2:小数の絶対値計算

同様に、小数の絶対値を計算するにもabs()関数を使用します。

この関数は小数の絶対値を返します。

print(abs(-3.14))  # 3.14

このコードでは、abs()関数を使って小数-3.14の絶対値を計算しています。

結果として3.14が出力されます。

○サンプルコード3:負の小数の絶対値計算

負の小数の絶対値も同じくabs()関数を使用して計算します。

print(abs(-0.99))  # 0.99

このコードでは、abs()関数を使って負の小数-0.99の絶対値を計算しています。

結果として0.99が出力されます。

○サンプルコード4:変数を用いた絶対値計算

変数に格納された数値の絶対値を求めるにもabs()関数を使用します。

変数を引数に渡すことでその絶対値を計算することが可能です。

num = -8
print(abs(num))  # 8

このコードでは、変数numに値-8を代入し、その絶対値を計算しています。

結果として8が出力されます。

○サンプルコード5:リスト内の数値の絶対値計算

リスト内の全ての数値の絶対値を計算するには、リスト内包表記を使用すると便利です。

リスト内包表記とは、リストの中で直接計算や操作を行うことができるPythonの機能です。

numbers = [-5, -3, 0, 3, 5]
abs_numbers = [abs(num) for num in numbers]
print(abs_numbers)  # [5, 3, 0, 3, 5]

このコードでは、リストnumbers内の各数値の絶対値を一度に計算しています。

その結果を新しいリストabs_numbersに格納し、出力しています。

結果として、すべて正の数値からなるリスト[5, 3, 0, 3, 5]が出力されます。

○サンプルコード6:複素数の絶対値計算

Pythonのabs()関数は、複素数の絶対値(大きさ)も計算することができます。

複素数の絶対値は、実部と虚部を平方和の平方根で表され、それは原点からの距離を表します。

complex_num = 3 + 4j
print(abs(complex_num))  # 5.0

このコードでは、複素数3 + 4jの絶対値を計算しています。

この複素数の絶対値は、実部3と虚部4を平方和の平方根で計算すると5.0となります。

したがって、結果として5.0が出力されます。

○サンプルコード7:絶対値の比較

Pythonでは、abs()関数を使って数値の大きさを比較することも可能です。

ここでは、二つの数値の大きさを比較する例を示します。

num1 = -10
num2 = 8
print(abs(num1) > abs(num2))  # True

このコードでは、数値-108の絶対値を比較しています。

結果としてTrueが出力されます。

これは、-10の絶対値108の絶対値8よりも大きいためです。

○サンプルコード8:絶対値を用いたソート

Pythonのabs()関数を用いて、リストの要素をその絶対値に基づいてソートすることも可能です。

これは、sorted()関数のkey引数にabsを指定することで実現できます。

numbers = [-1, -3, 2, 4, -6, 5]
sorted_numbers = sorted(numbers, key=abs)
print(sorted_numbers)  # [-1, 2, -3, 4, 5, -6]

このコードでは、numbersリストの要素をその絶対値に基づいてソートしています。

結果として、絶対値が小さい順にソートされたリスト[-1, 2, -3, 4, 5, -6]が出力されます。

○サンプルコード9:条件式を用いた絶対値計算

Pythonでは、条件式(三項演算子)を用いて絶対値を計算することもできます。

これは、abs()関数が利用できない状況や、計算の過程をより明確にするために使用します。

num = -7
abs_num = num if num >= 0 else -num
print(abs_num)  # 7

このコードでは、numが0以上ならそのままの値を、そうでなければ符号を反転させた値を返す条件式を用いて絶対値を計算しています。

結果として7が出力されます。

○サンプルコード10:エラー処理と絶対値計算

Pythonでは、abs()関数に非数値を渡すとエラーが発生します。

そのような状況を想定して、エラー処理を含めた絶対値計算の例を紹介します。

try:
    print(abs('a'))  # TypeError
except TypeError:
    print('Error: 数値以外は絶対値を計算できません')

このコードでは、文字列'a'に対してabs()関数を実行しようとしていますが、この関数は数値のみを引数に取るため、TypeErrorが発生します。その例外を捕捉し、エラーメッセージを出力しています。

●Pythonで絶対値を扱う際の注意点

Pythonで絶対値を扱う際には、次の点に注意する必要があります。

  1. abs()関数は数値を引数に取る:文字列やリストなど、非数値を引数として渡すとTypeErrorが発生します。数値のみを引数に渡すことを確認しましょう。
  2. 複素数の絶対値は実数です:Pythonのabs()関数は複素数の絶対値(大きさ)を計算することもできますが、その結果は実数(浮動小数点数)となります。
    この点を理解しておくと、複素数を扱う際に混乱を避けることができます。

●Pythonで絶対値を活用する応用例

Pythonで絶対値を活用する応用例として、数値の大小を比較する、リストをソートする、距離を計算するなどがあります。

特に、絶対値は、数値の大小や距離を比較する際に便利です。

# ユークリッド距離の計算
import math
point1 = [1, 2]
point2 = [4, 6]
distance = math.sqrt((point2[0]-point1[0])**2 + (point2[1]-point1[1])**2)
print(distance)  # 5.0

このコードでは、2点間のユークリッド距離(直線距離)を計算しています。

2次元平面上の2点point1point2の座標を用いて、それぞれの座標値の差の二乗を和し、その平方根を求めることで、2点間の距離を計算しています。

結果として5.0が出力されます。

まとめ

以上、Pythonで絶対値を扱う10の方法について解説しました。

初心者でも簡単に理解できるように、基本的な方法から応用例まで段階的に説明しました。

これらの知識を活用して、Pythonでの絶対値計算をマスターしましょう。