Comment éliminer les dictionnaires en double dans une liste Python ?

Mary-Kate Olsen
Libérer: 2024-10-27 05:59:03
original
206 Les gens l'ont consulté

How to Eliminate Duplicate Dictionaries in a Python List?

Supprimer les doublons d'une liste de dictionnaires

La duplication dans une collection de données peut être un obstacle à un traitement efficace des données. En programmation Python, les listes de dictionnaires sont couramment utilisées pour stocker des données tabulaires. Cependant, il peut y avoir des cas où vous devrez supprimer les dictionnaires en double d'une telle liste.

Considérez la liste de dictionnaires suivante :

[
    {'id': 1, 'name': 'john', 'age': 34},
    {'id': 1, 'name': 'john', 'age': 34},
    {'id': 2, 'name': 'hanna', 'age': 30},
]
Copier après la connexion

L'objectif est d'obtenir une liste avec uniquement des dictionnaires uniques. dictionnaires, à l’exclusion des doublons. Pour y parvenir, nous pouvons utiliser une approche simple :

Créer un dictionnaire temporaire avec ID comme clé

  1. Créer un dictionnaire temporaire en utilisant une compréhension de liste, où la clé de chaque dictionnaire est son champ « id ».
  2. Cette étape mappe essentiellement chaque valeur « id » unique à un dictionnaire spécifique.

Extraction de dictionnaires uniques à partir de valeurs

  1. Obtenez les valeurs du dictionnaire temporaire à l'aide de la méthode values().
  2. Le résultat est une liste de dictionnaires uniques, avec les doublons supprimés.

Implémentation de Python

Voici comment implémenter cette approche en Python :

<code class="python">def remove_duplicates_from_dicts(dict_list):
    dict_id_mapping = {v['id']: v for v in dict_list}
    return list(dict_id_mapping.values())

sample_list = [
    {'id': 1, 'name': 'john', 'age': 34},
    {'id': 1, 'name': 'john', 'age': 34},
    {'id': 2, 'name': 'hanna', 'age': 30},
]
print(remove_duplicates_from_dicts(sample_list))</code>
Copier après la connexion

Ce code produira le résultat suivant :

[{'id': 1, 'name': 'john', 'age': 34}, {'id': 2, 'name': 'hanna', 'age': 30}]
Copier après la connexion

En employant cette stratégie, vous pouvez supprimer efficacement les dictionnaires en double d'une liste et obtenir une nouvelle liste avec uniquement des éléments uniques.

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!