\

Pythonの辞書では、通常、キーを指定して値を取得します。しかし、場合によっては、値からキーを検索したいこともあります。この記事では、Pythonで辞書からキーを値で検索する方法を紹介します。

方法1: forループとif文を使用する

以下のコードは、forループとif文を使用して、辞書からキーを値で検索する基本的な方法を示しています。

dictionary = {'george': 16, 'amber': 19}
search_age = input("Provide age")
for name, age in dictionary.items():
    if age == int(search_age):
        print(name)

このコードでは、items()メソッドを使用して辞書の各アイテム(キーと値のペア)を取得し、forループでそれらを反復処理します。各アイテムに対して、if文を使用して値が検索したい値と一致するかどうかを確認します。一致する場合、対応するキー(この場合はname)が出力されます。

方法2: リスト内包表記を使用する

以下のコードは、リスト内包表記を使用して、辞書からキーを値で検索する別の方法を示しています。

dictionary = {'george': 16, 'amber': 19}
search_age = 19
keys = [k for k, v in dictionary.items() if v == search_age]
print(keys)

このコードでは、リスト内包表記を使用して、値が検索したい値と一致するすべてのキーを新しいリストに収集します。この方法は、辞書に同じ値を持つ複数のキーがある場合に特に便利です。

以上、Pythonで辞書からキーを値で検索する方法を紹介しました。これらのテクニックを使えば、Pythonの辞書をより柔軟に操作することができます。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です