Pythonでは、リストの要素を条件に応じてフィルタリングすることができます。これは、特定の条件を満たす要素だけを抽出したいときなどに非常に便利です。そのための関数がPythonには組み込まれており、その名もfilter()
です。
filter()関数の基本的な使い方
filter()
関数の基本的な使い方は以下の通りです。
filter(関数, リスト)
ここで、関数
は各要素に適用される関数で、この関数がTrue
を返す要素だけが新しいリストに含まれます。リスト
はフィルタリング対象のリストです。
filter()関数の使用例
以下に、filter()
関数の使用例を示します。
# 偶数だけを抽出する関数
def is_even(number):
return number % 2 == 0
# リストの定義
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# filter関数の使用
even_numbers = list(filter(is_even, numbers))
print(even_numbers) # Output: [2, 4, 6, 8, 10]
この例では、is_even
関数は偶数ならTrue
を返し、その結果、偶数だけが新しいリストeven_numbers
に含まれます。
無名関数を使ったfilter()関数の使用
また、Pythonでは無名関数(ラムダ関数)を使って、より簡潔にfilter()
関数を使用することも可能です。
# リストの定義
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# 無名関数を使ったfilter関数の使用
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers) # Output: [2, 4, 6, 8, 10]
この例では、lambda x: x % 2 == 0
という無名関数が各要素に適用され、偶数だけが新しいリストに含まれます。
以上、Pythonのfilter()
関数を使ったリストのフィルタリング方法について説明しました。この機能を使うことで、リストから特定の条件を満たす要素だけを効率的に抽出することができます。ぜひ活用してみてください。