Python での特定の辞書 Key-Value の検索
辞書のリストが与えられた場合、特定の Key-Value を検索して次のことを行うのが一般的です。対応する辞書を取得します。たとえば、次のリストについて考えてみましょう。
[ { "name": "Tom", "age": 10 }, { "name": "Mark", "age": 5 }, { "name": "Pam", "age": 7 } ]
「Pam」という名前の辞書を検索するには、ジェネレーター式を使用できます。
dicts = [ { "name": "Tom", "age": 10 }, { "name": "Mark", "age": 5 }, { "name": "Pam", "age": 7 } ] matching_dict = next(item for item in dicts if item["name"] == "Pam")
next() 関数は戻ります。ジェネレーターの最初の項目は、「Pam」という名前の辞書です。ジェネレーター式を使用すると、すべての結果をメモリに保存せずに効率的な反復が可能になります。
項目が存在しない可能性がある場合には、パラメータを指定した next() 関数を使用してデフォルト値を提供できます。
matching_dict = next((item for item in dicts if item["name"] == "Pam"), None)
あるいは、列挙を使用して一致する項目のインデックスを見つけることもできます:
matching_index = next((i for i, item in enumerate(dicts) if item["name"] == "Pam"), None)
以上がPython 辞書のリストで特定のキーと値のペアを効率的に見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。