Pythonの関数とは
関数とは、入力値を受け取り、何かしらの処理を実行し、出力値を返すまでの複合文のことです。ある特定の処理をひとまとまりにしたものです。Pythonには初めから提供されている組込み関数と言うものがあります。また、ユーザーが独自に関数を作ることもできます。ここでは独自関数を作りながら関数についての動作や基本的な記述の仕方などを説明しています。
Pythonの関数の記述の仕方
独自関数を使うにはまず準備をします。準備することを定義すると言います。
Pythonでの関数定義
基本的な記述の仕方は下記のようにします。まず初めにdefと記述します。Pythonで関数を定義するときの決まり文句です。defに続けて半角スペースを入力して関数の名前を書いてあげます。その下に関数として処理したい内容を、必ずインデントを入れて記述します。
行の先頭から空白文字で字下げを行うことです。4文字の半角スペースを使います。
def 関数名(引数):
処理
return 戻り値
関数名の付け方は通常、英小文字を使用します。複数の単語から構成される名前を付ける場合はアンダースコア「_」で連結します。
引数や戻り値は必須と言うわけではありませんが記述するときは下記のように引数、戻り値を設定してあげます。
関数の呼び出し方
関数は定義しただけでは意味がありません。関数を使用するには呼び出してあげる必要があります。関数の呼び出しは定義した時の名前をそのまま記述します。引数を設定したい時は()かっこ内に値を記述します。
# 引数ありで関数を呼び出す場合
関数名(引数)
# 引数なしで関数を呼び出す場合
関数名()
関数に引数を設定しな場合でも()かっこは必要なので忘れないようにしましょう!
関数の引数とは
引数とは関数に渡す値のことで、引数の渡し方は、関数を呼び出すときの()かっこ内に渡したい値を設定します。
def 関数名(引数):
処理
return 戻り値
引数の渡し方
下記のサンプルコードは5が引数となり、この値をaという仮引数で受け取り関数内で処理が実行されます。
# 関数定義
def add_function(a):
ans = a + 10
print(ans)
# 関数呼び出し
add_function(5)
複数の引数の渡し方
引数は1つ以上設定することが可能です。1つ以上引数を設定するには、各引数を「,」カンマで区切り設定します。関数定義側も関数呼び出し側も引数は同じ数を設定します。下記のサンプルコードは5と10が引数となり、aとbが仮引数となり値を受け取り関数内で処理が行われます。
# 関数定義
def add_function(a, b):
ans = a + b
print(ans)
# 関数呼び出し
add_function(5, 10)
関数の戻り値とは
関数が処理を実行した後に戻ってくる値の事を言います。関数を実行して値を戻すにはreturnを使用します。returnに続いて返したい値設定してあげます。
def 関数名(引数):
処理
return 戻り値
関数内で処理した値を他のプログラムでも使用したい場合にreturnを使用します
returnを使った値の戻し方
下記のサンプルコードは関数を呼び出した時に5と10を引数として設定し、仮引数のaとbで受け取り、関数内で処理を実行してansという変数にいれreturnを使用して値を返しています。返される値を resultという変数に入れています。
# 関数定義
def add_function(a, b):
ans = a + b
return ans
# 関数呼び出て変数に入れる
result = add_function(5, 10)
print(result)
returnを使った複数の値の戻し方
複数の値を返したい場合はreturnに続いて返したい値を「,」カンマで区切ります。下記のサンプルコードは 5と10を引数として設定し、仮引数のaとbで受け取り、関数内で足し算と掛け算の処理をしてそれぞれ変数に入れてreturnに続けて返したい値を「,」カンマで区切ります。
# 関数定義
def add_mul(a, b):
add = a + b
mul = a * b
return add, mul
# 関数を呼び出して変数に計算結果が返ってきます
result_add, result_mul = add_mul(5, 10)
# 15 50の値が表示される
print(result_add, result_mul)
サンプルコード
関数のサンプルコードをまとめてみました。よろしければ参考にして下さい。
引数・戻り値なし
# 関数定義
def first_function():
print('初めての関数')
# 関数呼び出し
first_function()
引数を設定しない場合でも関数呼び出すときは()かっこをわすれないように
引数あり・戻り値なし
# 関数定義
def first_function(text):
print(text)
# 関数呼び出し
first_function('初めての関数')
引数なし・戻り値あり
# 関数定義
def first_function():
return '初めての関数'
# 関数を呼び出して変数に入れる
text = first_function()
print(text)
戻り値を設定する場合はreturnを使用します
引数・戻り値あり
# 関数定義
def first_function(text):
return text
# 関数を呼び出して変数に入れる
result = first_function('初めての関数')
print(result)
複数の戻り値を返す
# 関数定義
def add_mul(a, b):
add = a + b
mul = a * b
return add, mul
# 関数を呼び出して変数に計算結果が返ってきます
result_add, result_mul = add_mul(5, 10)
# 15 50の値が表示される
print(result_add, result_mul)
まとめ
今回はPythonにおける関数の基本的な記述の仕方について解説してきましたがいかがだったでしょうか。今回の要点をまとめると以下のようになります。
- 関数とは特定の処理を1つにまとめたもの
- 関数は「def 関数名」で定義して、使用するときは定義した関数名を使用
- 引数とは関数に渡す値の事
- 戻り値とは関数を実行して得られた結果の事
無料で簡単にプログラムを実行する環境を試す
実際にプログラムを動かしてみるとわかりやすと思います。環境構築不要でなおかつ無料でPythonを実行できるGoogleのサービス「Google Colaboratory」があるのでよかったら利用してみてください。使い方などは下記の記事にまとめてますのでご覧ください。
コメント