Comment inverser un dictionnaire avec des valeurs de liste ?

Mary-Kate Olsen
Libérer: 2024-10-29 18:39:56
original
903 Les gens l'ont consulté

How to Invert a Dictionary with List Values?

Inverser un dictionnaire avec des valeurs de liste

Votre objectif est d'inverser un dictionnaire (index) avec des valeurs de liste de telle sorte que le dictionnaire résultant (inverse) ait des valeurs en double fusionnées dans une clé avec les clés d'origine comme valeurs.

La fonction fournie, invert_dict, échoue lorsqu'elle rencontre des valeurs de liste en raison de la nature non hachable des listes. Pour résoudre ce problème, envisagez la solution suivante :

<code class="python">inverse = {}
for k, v in index.items():
    for x in v:
        inverse.setdefault(x, []).append(k)</code>
Copier après la connexion

Cette solution parcourt le dictionnaire d'origine (index), accédant à chaque clé (k) et valeur (v). Pour chaque valeur de v (qui est une liste), il ajoute la clé associée à une liste du dictionnaire inverse à l'aide de la méthode setdefault. La méthode crée une nouvelle entrée pour chaque valeur unique dans v et ajoute la clé à la liste associée.

En conséquence, le dictionnaire inverse contiendra la structure inversée souhaitée, chaque valeur étant une liste de clés originales où cette valeur apparaît.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!