理系のブログ

『関数と引数・返り値』ゼロから始めるプログラミング入門③

理系のブログ

関数とは

関数とは実行したとき、あらかじめ定めておいた処理を実行する命令のことです。

イメージ的には複数の命令をひとまとめにしたようなものですね。

関数という言葉自体は中学数学で『入力xを決めると、それに対して出力yも決まるとき、yをxの関数という。』と習ったと思いますが、プログラミングでは入力や出力は必ずしも必要ではありません。

関数を定義する

実際に見てみた方が早いと思うので、例を出してみます。

def func1():
  print("りんご")
  print("みかん")
  print("ぶどう")

このように記述して実行すると、関数を定義(設定)することができます。

関数の定義の仕方は1行目のように、def の後に任意の関数名(今回はfunc1()としました)、その後にコロン:をつけ、2行目以降に実行したい処理を書いていきます。

今回の関数は実行すると2・3・4行目の3つのプリント関数が実行されることになりますね。

関数を実行する

関数を実行するには、先ほど決めた関数名を書いて実行するだけです。

func1()
りんご
みかん
ぶどう

先ほど定義した通り、print(“りんご”)、print(“みかん”)、print(“ぶどう”)の三つの処理が実行されているのが確認できるかと思います。

関数の入力「引数」

プログラミングでは、関数の入力の部分を引数と呼びます。

引数は関数名の()の中に書くのですが、これも実際に見た方が早いと思います。

def func2(x):
  y=x+2
  print(y)

関数に値を入力したければ、もちろん定義の段階で「値が入力される前提の関数」、つまり引数を持つ関数にする必要があります。

引数を持つようにするには上記のように、()内に任意の変数名を入力しておきます。こうすることで後で関数を実行したときに()内に書いた値が変数に代入されます。

func2()では、まず入力された値(引数)をxとし、2行目でxに2を足したものをyに代入、3行目でそのyをprint()関数で出力するという流れになっています。

関数を実行するときには、()の中には実際の値を書きます。

func2(10)
12

ここで、xやyに値を代入するのは関数実行の中だけの話、つまりは一時的な代入であり、例えばfunc2(10)を実行し終わった後にはyという変数に12が保存されているわけではありません。

関数の出力「返り値」

関数を実行したとき、結果を確認するだけならprint()関数で画面に表示してしまえば良いわけですが、結果をさらに使いたい場合は関数の返り値として設定します。

def func3(x):
  y=x+2
  return y

返り値は「return 変数」と書けば設定できます。

返り値を設定すると、例えば次のような使い方ができるようになります。

t=func3(10)+5
print(t)
17

先程のfunc2()関数ではprint()関数で画面に結果を表示しているだけでしたが、func3()関数のように返り値を設定しておくと、func3(10)自体を計算結果である12という値として使えます。

この記事の執筆者
理系さん

理系の現役京大生。
受験での失敗と成功の経験を生かした理系記事でブログ毎日更新中!Twitterもやっていますのでよかったらフォローよろしくお願いします。

理系のシモンをフォローする
スポンサーリンク
シェアお願いします
理系の地下室

コメント

タイトルとURLをコピーしました