はぴまるのおすすめキーボード Keychron K3 Max

初心者のためのPython基本講座:【第8回】関数の定義と戻り値を理解しよう!

当ページのリンクには広告が含まれている場合があります。

「Pythonの関数って何?」「Pythonで関数の使い方がわからない!」という疑問や悩みを持っていませんか?

そんな悩みや疑問を解消できるように、この記事ではPythonの関数について解説しています。

「初心者のためのPython基本講座」とは

この講座は、これからPythonを学ぼうとする初心者の方がPythonの基本を学ぶための講座です。

Pythonの代表的な構文の使い方を具体的なコードを例にして解説しています。

この記事は、以下のような方におすすめ!
Pythonの関数の使い方を知りたい
Pythonの基本を学びたい

関数を定義すると、同じ処理を何度も記述しなくても、関数を呼び出すだけで同じ処理を実現できます。

この記事を読めば、Pythonの関数の扱い方を学ぶことができます

Pythonの基本をマスターして、Pythonプログラマーとしての一歩を踏み出しましょう!

目次

前回の振り返り

前回の記事では、Pythonの繰り返し処理について解説しました。

Pythonのフロー制御(繰り返し処理)について確認できていない方は、こちらの記事もチェックしておきましょう。

今回のゴール

では、改めて今回のゴールを確認しましょう。

今回のゴールは、Pythonの関数定義方法を学び、実際に動作を確認することです。

今回提示している例だけでなく、ご自身でもいろいろな関数を定義して呼び出してみてください。

Pythonの関数


関数は、一連の命令をまとめて名前を付け、それを何度も簡単に呼び出せるようにしたものです。

関数を使用する主な利点は、コードの再利用性を高め、プログラムの構造を整理し、コードの可読性を向上させることです。

それでは、Pythonの関数の扱いについて一緒に確認していきましょう!

実行確認は、Pythonコンソールを使うと簡単ですよ!

関数の定義

関数の定義にはdefを使います。

関数の基本構文は次のとおりです。

# 関数の定義
def 関数名(引数):
    # コードブロック

# 関数の呼び出し
関数名(引数)

引数に関しては、次回以降の記事で詳しく触れますが、関数に渡す変数になります。

この引数の値が変化することで、同じロジックで処理をしても結果が変わってくることになります。

次の例では、thingとbasketという引数を持つ、LookIntoTheBasketという名前の関数を定義しています。

# リストを定義
basket = ['apple', 'orange', 'banana', 'lemon']

# 関数を定義
def LookIntoTheBasket(thing, basket):
    for fruit in basket:
        if fruit == thing:
            print(thing,'is in the basket.')
            break
    else:
        print(thing,'is not in the basket.')

# 関数の呼び出し
LookIntoTheBasket('apple', basket)
LookIntoTheBasket('mikan', basket)
apple in the basket.
mikan is not in the basket.

関数を呼び出す際に、引数を指定することで、実行結果が変わっています。

このように関数で定義されたロジックは同じですが、引数に指定される値によって結果は異なります。

関数の代入

関数を別の変数に代入することができます。

次の例で動作を見ていきましょう。

# 先ほど定義したLookIntoTheBasketという関数を、変数valueに代入しました
value = LookIntoTheBasket

# valueは、LookIntoTheBasket同様に引数を受け取って同様の結果を返します。
value('kaki', basket)
kaki is not in the basket.

関数を代入した変数が、代入した関数と同様の動きになっていることがわかりますね。

つまり、関数を変数に代入すると、代入した関数と同様に扱うことができます。

関数の戻り値

戻り値というのは、関数が何かしらの処理をして結果を返す値のことです。

関数が処理をした結果を戻り値として受け取ることもできますし、正常に終了したか否かなどのステータスを返すようにすることもできます。

明示的に指定しない場合

必ずしも関数の戻り値を指定しなければならないわけではないです。

戻り値を指定しない場合は、関数の戻り値にNoneが返ってきます。

ちなみに、先ほどのLookIntoTheBasketという関数は戻り値を指定していません。

print関数によって文字列が出力されますが、これは処理結果であって戻り値ではないんです。

それではprint関数を使って、確かに返り値がNoneになっていることを確認してみます。

print(value('apple', basket))
apple is in the basket.
None

結果の一行目にあるapple is in the basket.は戻り値ではなくて、print関数が処理した結果でることに注意してくださいね。

明示的に指定する場合

今度は戻り値を指定してみましょう。

戻り値を指定するにはreturnを指定します。

例えば、以下のように、先ほどのサンプルを少し変えて、printではなく、returnで戻り値として結果を受け取るようにしてみます。

# リストの定義
basket = ['apple', 'orange', 'banana', 'lemon']

# 関数の定義
def LookIntoTheBasket(thing, basket):
    for fruit in basket:
        if fruit == thing:
            return thing + ' is in the basket.'
    else:
        return thing + ' is not in the basket.'

# 関数の呼び出し
print(LookIntoTheBasket('apple', basket))
apple is in the basket.

明示的に戻り値を指定したことで、Noneが返ってこなくなりましたね。

まとめ

今回の記事では、Pythonの関数定義と戻り値について解説しました。

今回のポイントをまとめると、次のとおりです。

まとめ
  • 関数定義にはdefを使用する
  • 関数を変数に代入すると、代入した関数と同様に扱うことができる。
  • 関数には戻り値を指定できるが、指定しない場合はNoneが返ってくる。

Pythonの関数定義を理解できたことで、これまで都度コードを記述していた部分を関数化してみたくなったのではないでしょうか。

Pythonの関数定義は、他のプログラミング言語とそこまで大きく違いません。
ぜひこの記事を参考にして、Pythonの関数定義と戻り値をマスターしてください!

以上、最後までお読みいただきありがとうございました。

未経験からのITエンジニア転職に挑戦したい方へ

転職も含めて真剣にプログラミングスキルを手に入れたいとお考えの方に、おすすめの方法をご紹介します。

結論から言うと、それは転職活動とスキル学習を同時に進める方法です!

同時に進める理由は、転職成功までの時間を短縮するためなんですが、

でも昼間は学校や本業もあるのに、転職活動と学習を同時にって無理!

って思いますよね?

そんな忙しい方には、スキル学習と転職サポートが一体となているがオススメ!

しかも、学習サポートも転職サポートも無料で利用できます!

ウズカレITはITスクールのを運営する企業uzuzのサービスだから

体系的かつ総合的に学習サポートを受けることができます。

ITエンジニアはまだまだ売り手市場で、未経験可の求人もたくさんあります。

一度、ウズカレITの無料相談で不安に思ってることなどを相談してみるのがオススメです。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次