【Python】return文の使い方をわかりやすく解説

【Python】return文の使い方をわかりやすく解説

公開: 更新:
CodeCampが提供するDX人材育成が可能なプログラミングやITが学べる公開講座



Pythonのreturn文の基本的な使い方

Pythonのreturn文は関数の実行結果を呼び出し元に返すために使用される重要な命令です。関数内で処理した結果を他の場所で利用したい場合にreturn文を記述することによって、その値を取得できます。関数内でreturn文が実行されると、その時点で関数の処理は終了し、指定した値が関数の呼び出し元に返されます。

return文は値を返さずに関数を終了させる目的でも使用できます。この場合、return文の後に値を指定せず単に「return」と記述するだけで、関数の実行を途中で終了させることができます。複雑な条件分岐がある関数において、特定条件を満たした時点で処理を中断したい場合にこの方法が有効です。

【サンプルコード】
def add_numbers(a, b):
    result = a + b
    return result

# 関数を呼び出して戻り値を変数に格納
sum_result = add_numbers(5, 3)
print(f"足し算の結果: {sum_result}")

# 戻り値を直接使用
print(f"10を足した結果: {add_numbers(5, 3) + 10}")
【実行結果】
足し算の結果: 8
10を足した結果: 18

関数内で計算したresultの値はreturn文によって関数の外部に渡されるため、変数sum_resultに格納して利用できます。関数の戻り値は他の計算式の一部として直接使用することも可能であり、上記例では足し算の結果にさらに10を加える処理を行っています。


Python研修一覧はこちら

目的に合うPython研修を一覧形式から探したい方は、ぜひご利用ください。

Python研修を比較する

Java研修一覧はこちら

目的に合うJava研修を一覧形式から探したい方は、ぜひご利用ください。

Java研修を比較する

PHP研修一覧はこちら

目的に合うPHP研修を一覧形式から探したい方は、ぜひご利用ください。

PHP研修を比較する

新入社員研修

目的に合う新入社員研修を一覧形式から探したい方は、ぜひご利用ください。

新入社員研修を比較する

全ての研修からも探したい方はこちら

Pythonのreturnで複数の値を返す方法

Pythonのreturn文は一度に複数の値を返すことができる強力な機能を持っています。カンマで区切って複数の値を指定すると、それらはタプルとして自動的にまとめられて返されます。この特性を活用することによって、複数の計算結果や異なる種類の情報を一つの関数から同時に取得できます。

複数の戻り値を受け取る側では、アンパック(展開)構文を使うと個別の変数に値を分けて格納できます。この方法により、関数から返された複数の値を、コードの可読性を損なうことなく簡潔に扱うことが可能です。

【サンプルコード】
def calculate_statistics(numbers):
    total = sum(numbers)
    average = total / len(numbers)
    maximum = max(numbers)
    minimum = min(numbers)
    return total, average, maximum, minimum

# 複数の戻り値を個別の変数に展開
data = [10, 20, 30, 40, 50]
sum_val, avg_val, max_val, min_val = calculate_statistics(data)

print(f"合計: {sum_val}")
print(f"平均: {avg_val}")
print(f"最大値: {max_val}")
print(f"最小値: {min_val}")

# タプルとして受け取る方法
result = calculate_statistics(data)
print(f"結果タプル: {result}")
print(f"タプルの2番目の要素(平均): {result[1]}")
【実行結果】
合計: 150
平均: 30.0
最大値: 50
最小値: 10
結果タプル: (150, 30.0, 50, 10)
タプルの2番目の要素(平均): 30.0

calculate_statistics関数は数値リストの合計、平均、最大値、最小値を計算して4つの値を同時に返しています。これらの値は個別の変数に直接展開するだけではなく、タプル型の変数に格納してインデックスでアクセスすることもできます。特にデータ分析や複雑な計算を行う関数において、この機能が真価を発揮します。

Pythonのreturnとif文を組み合わせた条件分岐

Pythonではreturn文とif文を組み合わせることによって、条件に応じて異なる値を返す関数を簡潔に実装できます。条件に基づいて処理を分岐させ、適切な結果を返すことは実用的なプログラミングにおいて非常に重要です。特に入力値の検証や状況に応じた異なる計算結果を提供する必要がある場合に有効な方法です。

関数内の任意の場所でreturn文が実行されると、その時点で関数の処理は終了することを理解しておく必要があります。この性質を利用することによって、複数の条件分岐を持つ関数でも、条件を満たした時点ですぐに結果を返して処理を終了させることができます。

【サンプルコード】
def check_grade(score):
    if score < 0 or score > 100:
        return "エラー: 点数は0から100の間で入力してください"
    
    if score >= 90:
        return "成績: A"
    elif score >= 80:
        return "成績: B"
    elif score >= 70:
        return "成績: C"
    elif score >= 60:
        return "成績: D"
    else:
        return "成績: F(不合格)"

# 異なる点数でテスト
print(check_grade(95))
print(check_grade(75))
print(check_grade(50))
print(check_grade(120))
【実行結果】
成績: A
成績: C
成績: F(不合格)
エラー: 点数は0から100の間で入力してください

check_grade関数では、最初に入力値が有効範囲内かどうかをチェックし、無効な場合はエラーメッセージを返して処理を終了しています。入力が有効であれば、点数に応じて異なる成績評価を返す仕組みです。各条件分岐でreturn文を使用することによって、条件を満たした時点で即座に結果を返せる効率的な実装になっています。


Python基礎・実践(Django)

企業・法人向けのPython研修では、基礎から応用まで体系的に学べます。

Python研修の詳細

DX社員研修

企業・法人向けのDX研修では、実務に繋がるリスキリングでITレベルを向上させます。

DX研修の詳細

Javaエンジニア育成研修

企業・法人向けのJavaエンジニア育成研修では、Javaの基礎から応用まで確実に習得できます。

Java研修の詳細

新卒・新入社員向け研修

企業・法人に新入社員・新卒社員に向けたプログラミング研修を提供しています。

新入社員研修の詳細

コードキャンプのIT研修を全て見る

Pythonのreturnと辞書・リストの活用例

Pythonのreturn文は辞書やリストなどの複合データ型と組み合わせることで、複雑な情報を構造化して返すことができます。単一の値だけではなく、関連するデータをまとめて整理された形で提供したい場合に非常に便利です。特に辞書を使用すると、各値に意味のあるキーを付けることによって、返されたデータの利用がより直感的になります。

大量のデータや複雑な計算結果を返す場合、タプルよりも辞書やリストを使用する方が適切な場合があります。辞書を返す関数では、キーを通じて目的の値に名前でアクセスできるため、データの意味を把握しやすく、コードの可読性と保守性が向上します。

【サンプルコード】
def analyze_text(text):
    # テキストの様々な特性を分析して辞書で返す
    result = {
        "length": len(text),
        "words": len(text.split()),
        "uppercase_count": sum(1 for char in text if char.isupper()),
        "lowercase_count": sum(1 for char in text if char.islower()),
        "digit_count": sum(1 for char in text if char.isdigit()),
        "first_word": text.split()[0] if text else ""
    }
    return result

def get_even_numbers(numbers):
    # リストから偶数だけを抽出して返す
    even_numbers = [num for num in numbers if num % 2 == 0]
    return even_numbers

# 辞書を返す関数の使用例
sample_text = "Python3 is a Powerful programming language!"
analysis = analyze_text(sample_text)
print(f"文字数: {analysis['length']}")
print(f"単語数: {analysis['words']}")
print(f"大文字の数: {analysis['uppercase_count']}")

# リストを返す関数の使用例
number_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_list = get_even_numbers(number_list)
print(f"元のリスト: {number_list}")
print(f"偶数のみのリスト: {even_list}")
【実行結果】
文字数: 42
単語数: 6
大文字の数: 2
元のリスト: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
偶数のみのリスト: [2, 4, 6, 8, 10]

analyze_text関数はテキストの特性を分析し、結果を辞書形式で返すことによって、様々な情報に名前付きでアクセスできるようにしています。この方法は関数が多くの関連情報を返す場合に特に有用であり、戻り値の構造が明確になるため、後から関数を利用する際にも理解しやすくなります。

※上記コンテンツの内容やソースコードはAIで確認・デバッグしておりますが、間違いやエラー、脆弱性などがある場合は、コメントよりご報告いただけますと幸いです。

ITやプログラミングに関するコラム


ITやプログラミングに関するニュース

ブログに戻る

コメントを残す

コメントは公開前に承認される必要があることにご注意ください。

企業・法人向けのIT・プログラミング・生成AI研修を探す、比較する - IT・プログラミングを知って学べるコネクトメディア CodeCampが提供するDX人材育成が可能なプログラミングやITが学べる公開講座 - IT・プログラミングを知って学べるコネクトメディア コードキャンプが提供する無料で学べるプログラミングスクール講座 - IT・プログラミングを知って学べるコネクトメディア コードキャンプDX人材育成研修 - IT・プログラミングを知って学べるコネクトメディア 3.5日の研修で、年間1,600時間の削減効果が見込まれる。東京きらぼしフィナンシャルグループのDX人材育成事例 - IT・プログラミングを知って学べるコネクトメディア 配属3ヶ月で30%の生産性向上を実現するいよぎんコンピュータサービスの新人研修に迫る - IT・プログラミングを知って学べるコネクトメディア 金融業界の業務効率化を加速するニッセイアセットマネジメントの生成AI×GAS活用研修事例 - IT・プログラミングを知って学べるコネクトメディア 【製造業のDX人材育成事例】デジタル人材の即戦力化を実現する、日本ガイシ株式会社の異動者向オンボーディング研修 - ITやプログラミングを知って学べるコネクトメディア フューチャーアーキテクト株式会社が実現した新入社員向けIT研修プログラムでタスクフォース制度が主体的な学びと成長を生み出す - IT・プログラミングを知って学べるコネクトメディア コードキャンプDX人材育成研修 - IT・プログラミングを知って学べるコネクトメディア コードキャンプIT・プログラミング研修事例/【IT新入社員研修】オンラインとオフラインの最適バランスを実現したFutureOneの導入事例 - IT・プログラミングを知って学べるコネクトメディア コードキャンプIT・プログラミング研修事例/【新入社員研修】柔軟なハイブリッド型Java研修で実現した新卒20名の成長と成果|サークレイス株式会社 - ITやプログラミングを知って学べるコネクトメディア コードキャンプIT・プログラミング研修事例/現場により近いところにデジタルを根付かせるDX基礎講座研修|株式会社ブリヂストン - ITやプログラミングを知って学べるコネクトメディア コードキャンプIT・プログラミング研修事例/業務の効率化・DX推進に向けたIT人材育成への第一歩|株式会社カナエ - ITやプログラミングを知って学べるコネクトメディア 企業・法人向けのIT・プログラミング研修 - ITやプログラミングを知って学べるコネクトメディア

新着記事

対象者別で探す

子供(小学生・中学生・高校生)向け
プログラミング教室検索する

子供(小学生・中学生・高校生)がロボットやプログラミング言語を学ぶことができるオフラインからオンラインスクールを検索、比較することが可能です。

子供(小学生・中学生・高校生)
プログラミング教室検索する

ITやプログラムなどの
最新情報を検索する

日々、新しいITやプログラミング言語の情報が流れていきますが、特定の情報を時系列でニュースやコラムを確認することができます。

ITやプログラムなどの
最新情報を検索する