ITメモ
Python / パイソン




【Python】「関数(function)」の使い方

【Python】
関数(function)







「Python」関数の書式


「Python」の「関数」としての書式ルールがいくつか存在します。
詳しくは、下記をご参照ください。


「Python」関数の書式サンプル

def 関数名(引数,引数,・・・・):
関数のプログラミングコード
関数のプログラミングコード
関数のプログラミングコード
関数のプログラミングコード
return 返り値(変数・値)


「Python」の関数は、
・「def」文を使用して関数を定義する。
・関数内のスクリプトは、インデントの幅が同じのものが、関数内のスクリプトと判断される。
・「return」で指定することで、関数の戻り値を指定できる。
・「return」文を省略した場合、関数の帰り値は、「None」となる。
・関数内に値を渡すには、関数の引数(キーワード)を利用する。
・「リスト」を引数として渡すには、「*リスト名」と記述する。
・「タプル」を引数として渡すには、「*タプル名」と記述する。
・「辞書」を引数として渡すには、「**辞書名」と記述する。
・関数の冒頭に、「"""..."""」(ドキュメントストリング)が記述可能。
・関数の外部で定義された変数は グローバル変数となる。
・関数内での「グローバル変数」は、参照可能だが、代入は不可。
・グローバル変数に代入する場合は、「global グローバル変数名」と記述。


Back

関数を組み合わせる方法


「Python」の関数では、
複数の関数を同時に記述して実行させることが可能。

「.」の後に追加で組み合わせたい関数名を記述することで、 関数を複数組み合わせることができる。


関数を組み合わせる書式

変数名.関数名()
変数名.関数名().関数名()


print "Sample Text. New Line.".upper().split(" ")

出力結果:['SAMPLE','TEXT.','NEW','LINE.']


Back

ラムダ式(lambda)


「ラムダ式(lambda)式」は、「名前のない小さな関数」をいい、「ラムダ式」自体は式として扱われる。
式として扱われるので、関数の引数に指定することも可能。
lambda式は、「sorted()」「map()」「filter()」などの関数に渡す無名関数として利用される。

「ラムダ式(lambda)式」関数の書式
ラムダ式関数名 = lambda 引数1, 引数2: 引数1 + 引数2 print ラムダ式関数名(3, 5) #=> 8


Back

イテレータ(iterator)


「イテレータ」は 、for文のような繰り返し機能を持つオブジェクト。


Back

ジェネレータ(yield)


「ジェネレータ(yield)」は、イテレータを返却するジェネレータを定義する。


Back

デコレータ(@)


「デコレータ(@)」は、関数を実行する前後に特殊な処理を実行したい場合に使用する。
関数のようにデコレータを作成し、デコレータが呼び出された場合、その呼び出した関数が、どの位置で実行されるかも指定できる。


デコレータの書式
def デコレータ名(func):
def wrapper():
呼び出された関数の前に実行される処理
func() # デコレータを呼び出した関数を実行。
関数が終了後に実行される処理
return wrapper


@デコレータ名
def 関数名():
関数の実行処理


Back