.NETエンジニア・プログラマ向けの技術情報・業界ニュースをお届けします。

  1. FEnet.NETナビ
  2. .NETコラム
  3. プログラミング言語
  4. Python
  5. Pythonにおけるreturn文の機能と使い方とは?サンプルプログラムでわかりやすく解説!

Pythonにおけるreturn文の機能と使い方とは?サンプルプログラムでわかりやすく解説!

  • Python
  • プログラミング言語
公開日時:   更新日時:
Pythonにおけるreturn文の機能と使い方とは?サンプルプログラムでわかりやすく解説!
この記事でわかること
    基本情報技術者試験の試験対策はこちら>>
    システム
    エンジニア
    Pythonのreturn文はどのような働きがあるのですか。
    プロジェクト
    マネージャー
    return文は「関数」から呼び出し側へリターンするための命令文です。

    Pythonにおけるreturn文


    プログラミング言語Pythonにおけるreturn文について解説します。return文は「関数」から呼び出し側へ復帰(リターン)するための命令文です。つまりreturn文を理解するためには「関数」についてまず理解しなければなりません。また、return文が返す値はオブジェクトになりますのでオブジェクトについても理解する必要があります。

    Pythonにおける関数とは?

    Pythonにおける関数とは、数学で云うところの関数と考え方は同じです。「何らかの値を関数へ渡すとそれを演算して結果を返す」ということです。

    ただし、数学の関数と少し異なるところがあります。関数に渡す何らかの値(「引数」と言います)は0個以上であり、不要であれば引数を渡す必要はありません。また結果(「戻り値」と言います)も不要であれば返す必要はありません。更に関数が行う処理についてもプログラマが自由に記述することができます。

    下記のサンプルプログラムは’hello world’と表示するだけの関数(prn_hw)です。関数はdef文を使って定義します。prn_hw関数に引数と戻り値はありません。

    return文が返す戻り値

    Pythonのreturn文では型の異なる複数の値を戻り値として返すことができます。下記のサンプルプログラムを実行しますと変数tはタプル型(後述)として、変数a、b、cはそれぞれ整数型、実数型、str型として、戻り値を受け取ることができます。

    なお戻り値を受け取る変数の数は1つ、またはreturn文で返す戻り値の個数ちょうどでなければなりません。それ以外の数を指定した場合はエラーになります。

    タプル型とは?

    変数には「型」というものがあります。Pythonの場合、「型」は値を変数に格納する際に自動的に決まります。

    他の多くの言語の場合ではint型(整数型)は4バイトとかdouble型(実数型)は8バイトとか使用するメモリサイズが決まっています。それに対しPythonの場合、メモリサイズは可変長です。更に「型」はすべてオブジェクトとして扱われているため、沢山のメモリを消費します。しかし、その代わりリスト型やタプル型、ディクショナリ型などの便利な「型」を使うことができます。

    タプル型とは型の異なる値(オブジェクト)を順番に並べて番号でアクセスできるようにしたものです。言葉では分かりにくいかと思いますのでサンプルプログラムを示します。

    オブジェクトとは?

    Pythonだけに限りませんが、オブジェクトとは大雑把に言いますとデータと命令(メソッド)をひとまとめにしたものの事を言います。データを処理するには命令(メソッド)を使用しますが、それらをひとまとめにしてブラックボックスにしてしまえば、後は使い方さえ分かっていれば中身を気にしなくても良くなりますので開発効率が上がります。

    オブジェクトを定義するにはクラスを使います。クラスはオブジェクトの設計図のようなものです。使用するデータやメソッドを定義します。

    下記に「何もしない」クラスのサンプルプログラムを示します。「何もしない」クラスのインスタンス(オブジェクト)を作成し、valueアトリビュートに5を代入して、その値を表示するプログラムです。アトリビュートとはインスタンスに作成する変数のようなものです。

    Pythonにおけるreturn文の使い方


    Pythonにおけるreturn文は関数を終了して呼び出し側へ制御を返す機能と、戻り値を返す機能があります。

    最初に「関数の途中で制御を返す方法」、続いて「return文でオリジナルオブジェクトを返す方法」についてサンプルプログラムを用いて解説します。

    関数の途中で制御を返す方法

    通常return文は関数の最後に記述しますが、関数の途中にあるif文の中などにも記述することができます。関数の処理が完了した時点でreturn文を使って終了させることができます。

    下記のExample2関数は指定回数だけループするだけの関数ですが、変数iが5になったらreturn文を実行し終了するものです。

    return文でオリジナルオブジェクトを返す方法

    Pythonのreturn文ではオブジェクトを返すことができますので当然ですが自作したオリジナルのオブジェクトも戻り値として返すことができます。

    下記のサンプルプログラムはセットした幅と高さの値より、面積を求めるAreaClassインスタンス(オブジェクト)をExample3関数で作成し、return文の戻り値として呼び出し側へ返しています。

    システム
    エンジニア
    Pythonのreturn文についてよく分かりました。
    プロジェクト
    マネージャー
    return文を理解する上で必要な「関数」と「オブジェクト」、「タプル型」についても参考にしてください。

    まとめ

    Pythonのreturn文には関数を終了して制御を呼び出し側に返す機能と、制御を返す際に戻り値も一緒に返す機能があります。戻り値が複数あるときはタプル型で返りますが、呼び出し側で受け取る変数が複数ある場合にはタプル型ではなく個々の型で受け取ることができます。

    Pythonはインタプリタ言語です。そのため一行ずつ入力し、その都度実行&確認ができますので、これからプログラミングを始める方には良いプログラミング言語のひとつです。頑張ってマスターしてください。

    FEnet.NETナビ・.NETコラムは株式会社オープンアップシステムが運営しています。
    株式会社オープンアップシステムロゴ

    株式会社オープンアップシステムはこんな会社です

    秋葉原オフィスには株式会社オープンアップシステムをはじめグループのIT企業が集結!
    数多くのエンジニアが集まります。

    秋葉原オフィスイメージ
    • スマホアプリから業務系システムまで

      スマホアプリから業務系システムまで

      スマホアプリから業務系システムまで開発案件多数。システムエンジニア・プログラマーとしての多彩なキャリアパスがあります。

    • 充実した研修制度

      充実した研修制度

      毎年、IT技術のトレンドや社員の要望に合わせて、カリキュラムを刷新し展開しています。社内講師の丁寧なサポートを受けながら、自分のペースで学ぶことができます。

    • 資格取得を応援

      資格取得を応援

      スキルアップしたい社員を応援するために資格取得一時金制度を設けています。受験料(実費)と合わせて資格レベルに合わせた最大10万円の一時金も支給しています。

    • 東証プライム上場企業グループ

      東証プライム上場企業グループ

      オープンアップシステムは東証プライム上場「株式会社オープンアップグループ」のグループ企業です。

      安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。

    株式会社オープンアップシステムに興味を持った方へ

    株式会社オープンアップシステムでは、開発系エンジニア・プログラマを募集しています。

    年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
    まずは話だけでも聞いてみたい場合もOK。お気軽にご登録ください。

    株式会社オープンアップシステムへのご応募はこちら↓
    株式会社オープンアップシステムへのご応募はこちら↓

    Python新着案件New Job