INDEX
returnの概要
関数の戻り値 Python予約語 | ||
return 概要 わかりやすく説明 |
||
|
returnの基本的な使い方
以下の例では、2つの数値を加算し、その結果を返す関数を作成しています。
# return を使って計算結果を返す
def add(a, b):
return a + b
result = add(3, 7)
print(result) # 10
add()
関数は、a + b
の計算結果をreturn
で返す。- 戻り値は
result
に格納され、print()
で表示可能。
returnの早期終了
関数内で return
を使うと、その時点で関数の処理を終了できます。
# return を使って関数の処理を早期終了
def check_even(number):
if number % 2 == 0:
return "偶数です"
return "奇数です"
print(check_even(4)) # 偶数です
print(check_even(7)) # 奇数です
number
が偶数ならreturn "偶数です"
で関数が終了。- それ以外の場合、次の
return
が実行される。
returnを使って複数の値を返す
Pythonでは、return
で複数の値をタプルとして返すことができます。
# 複数の値を返す
def calculate(a, b):
return a + b, a - b, a * b
sum_result, diff_result, product_result = calculate(10, 3)
print(sum_result, diff_result, product_result) # 13, 7, 30
- 関数が複数の値を
return
し、タプルとして返す。 - 呼び出し側で複数の変数に分割して代入可能。
returnを使ったデフォルト値の処理
関数の戻り値が None
かどうかを判定し、デフォルト値を設定できます。
# return のデフォルト値処理
def find_even(numbers):
for num in numbers:
if num % 2 == 0:
return num
return None # 偶数が見つからない場合
result = find_even([1, 3, 5])
print(result or "偶数がありません") # 偶数がありません
- リストに偶数があれば、その値を返す。
- なければ
None
を返し、or
を使って「偶数がありません」を表示。
returnを使って再帰関数を作る
return
は再帰関数(関数が自分自身を呼び出す)でも活用されます。
# 階乗を計算する再帰関数
def factorial(n):
if n == 0:
return 1
return n * factorial(n - 1)
print(factorial(5)) # 120
- 基底条件(
n == 0
)に達したらreturn 1
。 - それ以外の場合、
return n * factorial(n - 1)
で再帰的に計算。
returnの注意点
- 関数の中で複数回
return
を書くと、最初に実行されたreturn
で関数は終了する。 - 戻り値がない場合、Python は自動的に
None
を返す。 - 複数の値を返すとタプルとして扱われる。
returnのよくある質問
- Q: return なしの関数はどうなりますか?
- A: 関数が
return
を持たない場合、Python は自動的にNone
を返します。 - Q: return はどこで使うべきですか?
- A: 計算結果を関数外で利用する場合や、関数の処理を途中で終了させたい場合に使います。
- Q: return の後にコードを書いたら実行されますか?
- A: いいえ、
return
を実行すると関数の処理は終了するため、その後のコードは実行されません。
まとめ
return
は関数の結果を返し、処理の流れを制御する重要なキーワードです。
- 計算結果や処理結果を関数の外で利用できるようにする。
- 関数の処理を途中で終了できる。
- 複数の値をタプルとして返すことが可能。
適切に return
を活用し、効率的なプログラムを作成しましょう。