コンテンツにスキップ

Pythonの戻り値の使い方

[

Pythonのreturnステートメント:使用とベストプラクティス

Pythonのreturnステートメントは、関数とメソッドの中でも重要な要素です。returnステートメントを使うことで、関数からPythonオブジェクトを呼び出し元のコードに返すことができます。これらのオブジェクトは、関数の返り値と呼ばれます。それらを使ってプログラム内でさらなる計算を行うことができます。

returnステートメントを効果的に使うことは、Pythonicで堅牢なカスタム関数をコーディングするための基本的なスキルです。

このチュートリアルでは、以下のことを学びます:

  • 関数内でのPythonのreturnステートメントの使い方
  • 関数から単一の値または複数の値を返す方法
  • returnステートメントの使用時に守るべきベストプラクティス

クイズに挑戦してみましょう: 対話型の「The Python return Statement」クイズであなたの知識をテストしてみましょう。クイズを完了すると、学習の進捗を追跡するためのスコアが表示されます。

クイズに挑戦する »

Python関数の始め方

ほとんどのプログラミング言語では、具体的な計算を実行するコードブロックに名前を付けることができます。これらの名前付きコードブロックは、コード内のさまざまな場所から呼び出すために名前を使うことで、素早く再利用することができます。

プログラマはこれらの名前付きコードブロックを副ルーチンルーチン手続き、または関数と呼びます。呼び出し元のコードから関数を呼び出すことで、複数の場所で同じコードブロックを使いまわすことができます。

Pythonでは関数を定義するための構文があります。以下に例を示します:

def function_name(parameter1, parameter2, ...):
# 関数の処理
# ...
# ...
return value

関数の定義はdefキーワードで始まります。関数名は任意の名前を付けることができますが、一般的に関数の目的や機能を示す名前を付けることが推奨されています。引数は関数に渡されるデータであり、処理に使用することができます。returnステートメントは関数から返される値を指定します。

以下に例を示します:

def add_numbers(x, y):
result = x + y
return result

この関数は2つの数値を受け取り、その合計値を返します。関数内でreturnステートメントが実行されると、その時点で関数の実行が終了し、呼び出し元に値が返されます。

関数を呼び出すには、関数名に()を付けて引数を渡します。以下に例を示します:

sum_result = add_numbers(3, 4)
print(sum_result) # 出力結果: 7

この場合、add_numbers関数は引数として3と4を受け取り、それらの合計値である7を返します。print関数は関数の返り値を出力します。

Pythonのreturnステートメントの理解

Pythonのreturnステートメントは、関数から値を返すために使用されます。returnステートメントが実行されると、関数の実行は終了し、関数の呼び出し元に指定された値が返されます。returnステートメントの位置によって、関数が返す値や関数の処理の実行順序が異なる場合があります。

明示的なreturnステートメント

明示的なreturnステートメントは、関数内の任意の場所で使用することができます。returnステートメントが実行されると、その時点で関数の実行が終了し、関数の呼び出し元に値が返されます。

以下に例を示します:

def multiply_numbers(x, y):
product = x * y
return product
result = multiply_numbers(5, 6)
print(result) # 出力結果: 30

この例では、multiply_numbers関数が2つの数値を受け取り、それらの積を返すように定義されています。関数内でreturnステートメントが実行されているため、関数が終了し、呼び出し元には30という値が返されます。

明示的なreturnステートメントは、関数内で特定の条件に基づいて値を返す際にも使われます。以下に例を示します:

def divide_numbers(x, y):
if y == 0:
return "Error: Division by zero is not allowed."
else:
quotient = x / y
return quotient
result1 = divide_numbers(10, 5)
print(result1) # 出力結果: 2.0
result2 = divide_numbers(10, 0)
print(result2) # 出力結果: Error: Division by zero is not allowed.

この例では、divide_numbers関数が2つの数値を受け取り、2つ目の数値が0でなければ2つの数値の商を返し、2つ目の数値が0である場合はエラーメッセージを返すように定義されています。関数内で条件分岐によってreturnステートメントが実行されているため、条件に基づいて異なる値が返されます。

暗黙のreturnステートメント

関数内に明示的なreturnステートメントが存在しない場合は、暗黙のreturnステートメントが自動的に実行されます。暗黙のreturnステートメントは、関数の最後の行にある式の評価結果を返します。

以下に例を示します:

def add_numbers(x, y):
result = x + y
result1 = add_numbers(3, 4)
print(result1) # 出力結果: None
result2 = add_numbers(5, 6)
print(result2) # 出力結果: None

この例では、add_numbers関数は2つの数値の合計を計算しますが、明示的なreturnステートメントが存在しないため、Noneが返されます。

暗黙のreturnステートメントは、関数の処理の最後に実行されるため、関数の実行はその時点で終了し、呼び出し元に値が返されます。したがって、明示的なreturnステートメントが存在しない場合、関数はNoneを返します。