【Python】リスト関数filterの使い方

この記事では、Python言語のリスト関数filterで条件を満たす要素のみ取り出す方法をソースコード付きで解説します。

リスト関数filter

Python3にはリストの各要素に対して処理できる「リスト関数」があります。
そのうちの1つであるfilter関数を使うことで、特定の条件を満たす要素のみ取り出せます。

【書式】
filter(関数, リスト)

※リストの各要素について順番に関数を順番に適用します。
そして、trueが返された要素のみからなるリストを返します。

ソースコード

サンプルプログラムのソースコードです。

# 関数定義
def func(x):
        if(x%2 != 0): return True
        else: return False

data = [1, 2, 3, 4, 5]

# 関数方式
filtered = filter(func, data)

# 結果表示
print( list(filtered) ) # [1, 3, 5]

※奇数のみをリスト形式で取り出します。
※filter関数の返り値からlist関数でリストを取り出せます。

関連ページ
1 【Python】リストの使い方
2 【Python入門】サンプル集

コメント