始める無料で始める

Filter() と lambda 関数

前の演習では、map() の中に処理を匿名で埋め込むために lambda 関数を使いました。今回はこれをもう一度練習しつつ、filter() と組み合わせて使います(はじめての方もいるかもしれません)。filter() は、特定の条件を満たさない要素をリストから取り除くための関数です。

この演習の目的は、文字列の入力リストから、文字数が 6 より多い文字列だけを含む新しいリストを filter() で作成することです。

この演習はコースの一部です

Pythonの関数入門

コースを見る

演習の手順

  • filter() の呼び出しで、lambda 関数と文字列のリスト fellowship を渡します。lambda 関数では、文字列 member の文字数が 6 より大きいかを len() で確認します。得られた filter オブジェクトを result に代入します。
  • result をリストに変換し、そのリストを出力します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Create a list of strings: fellowship
fellowship = ['frodo', 'samwise', 'merry', 'pippin', 'aragorn', 'boromir', 'legolas', 'gimli', 'gandalf']

# Use filter() to apply a lambda function over fellowship: result
____ = filter(____, ____)

# Convert result to a list: result_list
____

# Print result_list
print(result_list)
コードを編集して実行