ホーム > 記事 > Python > python入門 > 【Python】【図解】filterfalse関数

記事

【Python】【図解】filterfalse関数

filterfalse関数はイテラブルの中からfilterでFalseと判定された要素のみを抽出するイテレータ生成関数です。図解しているため、一目見て理解したい人にオススメの記事です。

目次

  1. filterfalse関数とは
  2. filterfalse関数を用いたサンプル
  3. まとめ

filterfalse関数とは

以下の図の通り第1引数には判定用の関数を指定します。第2引数には判定対象となるイテラブルを指定します。

filterfalse-fig1
各イテラブルの要素に対し第1引数で与えた判定関数を通します。値がFalseになったものは通過させます。値がTrueの場合には値が破棄されます。

↑目次

filterfalse関数を用いたサンプル

以下はfilterfalse関数を用いたサンプルです。

from itertools import  filterfalse
dic={'要素0':False,'要素1':True,'要素2':True,'要素3':False,'要素4':False,'要素5':True}

ite=('要素0','要素1','要素2','要素3','要素4','要素5')
ans=tuple(i for i in filterfalse(lambda x:dic[x],ite))
print(ans)

第1引数は判定関数ですがここではラムダ式を用いています。iteの各要素から値を取り出した値がラムダ式に入力されます。 ラムダ式では辞書を用いて入力値からTrue/Falseに変換しています。

実行結果

('要素0', '要素3', '要素4')

dicをみてもらえばわかる通りラムダ式で'要素0', '要素3', '要素4'が渡されたときにFalseを返すためこの値のみfilterを通り、他の値については破棄されます。

↑目次

まとめ

今回はfilterfalse関数を扱いました。判定用の関数によって様々なfilterをかけることができるため、かなり柔軟な使い方ができます。ぜひ活用してみてください。

 

↑目次

この記事へのコメント

コメントはまだありません。

コメントを送る

必須
必須  
※ メールアドレスは公開されません
任意
必須
Loading...  画像の文字を入力してください