ユーザ定義関数
ユーザ定義関数とはユーザが目的に応じて作る関数のことである。Pythonは動的型付け言語であるため、関数定義時における引数や戻り値の型の指定が不要である。
ユーザ定義関数を作るにはdef文を利用する。
code:func21.py
### 関数定義ここから
def calc_mean(x, y): # x, yは仮引数
return (x + y)/2 # 戻り値
### 関数定義ここまで
x = 1
y = 3
result = calc_mean(x, y) # 関数呼び出し
print(result)
チェックポイント
仮引数や戻り値の型指定が不要であることを確認しよう。
仮引数の x, y はローカル変数となる。
関数の名前には、英数字(アルファベットと数字)と一部の記号(特にアンダーバー)を利用することができる。アルファベットは全て小文字を利用するのが一般的である。
補足
PythonのプログラムにはC言語におけるプロトタイプ宣言のような「呼び出す前に関数の使い方を明らかにする」機能が無いため、関数定義は呼び出しより前の領域で行う必要がある。
上の例において、関数の呼び出しと定義を入れ替えた例。これはNGである。
code:func22.py
x, y = 1, 3
result = calc_mean(x, y) # 関数呼び出し、この時点でcalc_meanは定義されていない
print(result)
def calc_mean(x, y): # 関数定義
return (x + y)/2