Maison >développement back-end >Tutoriel Python >Comment puis-je trouver une clé de dictionnaire en fonction de sa valeur en Python ?

Comment puis-je trouver une clé de dictionnaire en fonction de sa valeur en Python ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-23 18:12:15360parcourir

How Can I Find a Dictionary Key Based on its Value in Python?

Récupération des clés de dictionnaire en fonction de la valeur

Lorsque l'on traite des dictionnaires en Python, il est souvent nécessaire de localiser la clé associée à une valeur donnée . Ce scénario se produit lorsque vous devez trouver le nom d'une personne en fonction de son âge, comme dans l'exemple suivant :

dictionary = {'george': 16, 'amber': 19}
search_age = input("Provide age: ")  # Replace raw_input with input in Python 3

Cependant, le code fourni rencontre une KeyError car il tente d'accéder directement à la valeur sans en vérifiant d'abord son existence. Pour remédier à cela, nous employons une approche plus robuste en utilisant les étapes suivantes :

  1. Séparez les valeurs du dictionnaire : Nous créons une liste contenant toutes les valeurs du dictionnaire : values_list = list (dictionary.values())
  2. Trouver la position de la valeur : Nous déterminons la position de la valeur recherchée valeur dans la liste_valeurs en utilisant value_index = valeurs_list.index(search_age)
  3. Récupérer la clé correspondante : En utilisant la position de la valeur, on obtient la clé correspondante à partir des clés du dictionnaire : nom = liste(dictionnaire .keys())(value_index]
  4. Imprimer le résultat : Nous affichons le récupéré name : print(name)

Par conséquent, notre code s'exécute désormais avec succès :

mydict = {'george': 16, 'amber': 19}
search_age = input("Provide age: ")
values_list = list(mydict.values())
if search_age in values_list:
    value_index = values_list.index(search_age)
    name = list(mydict.keys())[value_index]
    print(name)
else:
    print("Age not found.")

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn