Maison > Article > développement back-end > Comment extraire efficacement toutes les valeurs associées à une clé spécifique dans des structures de données imbriquées ?
Recherche de toutes les occurrences d'une clé dans des structures de données imbriquées
Objectif :
Récupérer toutes les valeurs associées à une clé spécifique dans des dictionnaires et des listes imbriqués.
Énoncé du problème :
Considérez une structure de données complexe comme ce dictionnaire :
{ "id": "abcde", "key1": "blah", "key2": "blah blah", "nestedlist": [ { "id": "qwerty", "nestednestedlist": [ { "id": "xyz", "keyA": "blah blah blah" }, { "id": "fghi", "keyZ": "blah blah blah" } ], "anothernestednestedlist": [ { "id": "asdf", "keyQ": "blah blah" }, { "id": "yuiop", "keyW": "blah" } ] } ] }
Le but est d'extraire toutes les valeurs associées à la clé "id".
Solution :
Pour parcourir et extraire les valeurs "id" de cette structure complexe, plusieurs approches peuvent être utilisées. Certaines des techniques couramment utilisées incluent :
Comparaison des performances :
Pour déterminer le plus approche efficace, les techniques mentionnées ont été testées sur des structures de données complexes contenant 100 000 itérations. Les résultats de performances ont révélé ce qui suit :
Conclusion :
Pour parcourir des structures de données complexes et extraire les valeurs associées avec une clé spécifique, l'utilisation d'une fonction génératrice récursive comme gen_dict_extract offre une efficacité et une fiabilité optimales.
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!