Recherche de valeurs-clés de dictionnaire spécifiques en Python
Étant donné une liste de dictionnaires, il est courant de rechercher des valeurs-clés spécifiques pour récupérer le dictionnaire correspondant. Par exemple, considérons la liste suivante :
[ { "name": "Tom", "age": 10 }, { "name": "Mark", "age": 5 }, { "name": "Pam", "age": 7 } ]
Pour trouver le dictionnaire portant le nom "Pam", nous pouvons utiliser une expression génératrice :
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")
La fonction next() renvoie le premier élément du générateur, qui est le dictionnaire portant le nom "Pam". L'utilisation d'une expression génératrice permet une itération efficace sans stocker tous les résultats en mémoire.
Pour les cas où l'élément peut ne pas exister, nous pouvons fournir une valeur par défaut en utilisant la fonction next() avec un paramètre :
matching_dict = next((item for item in dicts if item["name"] == "Pam"), None)
Alternativement, nous pouvons trouver l'index de l'élément correspondant en utilisant l'énumération :
matching_index = next((i for i, item in enumerate(dicts) if item["name"] == "Pam"), None)
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!