#この記事の対象者
・プログラムで言う関数がどう言う意味かわからない人
・defの使い方が話からいない人
※今回の実行環境はGoogleColaboratoryです。
#関数とは何者?
関数は数学で習った物とはまた別のものです。手短に説明すると、長いプログラムを書いていると何回か同じような処理を複数回使う事があります。そこで繰り返し使うプログラムをdefでまとめる事でプログラムを短く分かりやすく計算する事が出来ます。つまり関数はよく使うプログラムをdefに名前を使って呼び出す事がでいつでも使えるようになっています。実際に皆さんがよく使っているもので例を上げると **print()**関数です。文字をコマンドに表示させるにはもっと長いコードを書く必要がありますが、それをpython側で関数として定義しているおかげでこちらはprint関数のカッコ内に表示したい文字を表示するだけで、コンソールに文字を表示出来る訳です。
#実際にコードを書いて見よう!!
始めに完成形のコードを出しますのでそれを見ながら解説して行きます。
def say_hello():
print('hello')
say_hello()
関数の始めはdefと書きスペースを一つ開けて自分の好きな名前その後に**():をつけて関数の定義は完了です。()には関数内で使える変数のようなものを宣言できます。これを引数と呼びます。ここはつけなくても関数を動かす事が出来ます。次に二行目の解説です。インデントをつける事で関数内のプログラムであるとpythonが認識する事が出来ます。(関数が実行された時はこのインデントをつけたところが実行されます)最後に三行目です。ここでは関数を実行させるプログラムを書いています。つまりこのコードはsay_hello**と言う関数を実行しろと言う命令になっています。これが関数の基本的な書き方です。
⒈関数の定義は [defスペース好きな名前():]
⒉[インデントを開けて処理を書く]
⒊[実行したい関数名():]カッコの中には渡したい引数がある場合はカッコ内に記述する。
これだけで関数を使う事が出来ます。最後に関数の応用をして見ます。
コードです
# 外部ライブラリーを使う事を定義する
import matplotlib.pyplot as plt
# グラフを作図する関数を定義する
def RIM(axisX, axisY):
plt.plot(axisX, axisY);
# リストに0~9の数をリストで順番する。
x = list(range(10))
y = list(range(10))
RIM(x,y)
このように関数を使うといつでも簡単に処理を書く事が出来ます