最後の一致するインデックスを見つける

PythonPythonBeginner
オンラインで実践に進む

This tutorial is from open-source community. Access the source code

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

Python では、リスト内包表記と enumerate() を使って、特定の条件を満たすリストの最後の要素のインデックスを見つけることができます。このチャレンジでは、これらのツールを使って問題を解決する能力をテストします。

最後の一致するインデックスを見つける

引数としてリスト lst と関数 fn を受け取る関数 find_last_index(lst, fn) を書きます。この関数は、fnTrue を返す lst の最後の要素のインデックスを返す必要があります。どの要素も条件を満たさない場合、関数は -1 を返す必要があります。

def find_last_index(lst, fn):
  return len(lst) - 1 - next(i for i, x in enumerate(lst[::-1]) if fn(x))
find_last_index([1, 2, 3, 4], lambda n: n % 2 == 1) ## 2

まとめ

このチャレンジでは、特定の条件を満たすリストの最後の要素のインデックスを見つけるために、リスト内包表記と enumerate() をどのように使うかを学びました。これは、Python のツールボックスに持っておくのに役立つ技術です!