Python3入門 無名関数(ラムダ関数)

無名関数

 

無名関数を使うには、lambda関数 を使います。

書式

 

例1:任意の値を 3 でかけた値を返す関数を定義します。

 

次に 例1と同様の結果となる lambda関数 を定義します。

 

プログラムの説明

  • x は n * 3 を返す関数オブジェクトとなります。
  • つまり、x(実引数) とすると関数を呼び出すことができます。

 

 

例2:任意の値を 3 でかけた値を返すlambda関数を定義します。

 

仮引数 が lambda関数の関数オブジェクトとなるので、lambda関数(2) が戻り値として返されます。

 



 

を使ったリスト処理

 

リスト処理の時、lambda関数と一緒に使うと便利な関数を2つ紹介します。

 

リストについて

 

map()関数

 

map()関数 を使うと、リストの全要素に対して何らかの処理を反映することができます。

 

書式

 

 

例:リストの全要素に2倍するプログラムです。

 

  • 仮引数 n に対し、2倍する関数オブジェクトを x に代入
  • 関数オブジェクト x を、リスト a に適用し、リスト化した結果が表示されます。

 

このようにリスト変換をしないとアドレス値が返ります。

 

 

filter()関数

 

filter()関数を使うと、リストから任意の要素を取り出せます。

書式

 

例:リストから偶数の値だけを抽出します。

 

フォローする

スポンサーリンク


Python

Posted by pythonista