"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment supprimer les dictionnaires en double d’une liste en Python ?

Comment supprimer les dictionnaires en double d’une liste en Python ?

Publié le 2024-11-10
Parcourir:936

How to Remove Duplicate Dictionaries from a List in Python?

Suppression des doublons d'une liste de dictionnaires

Dans certains scénarios, il peut être nécessaire de supprimer les entrées en double d'une liste de dictionnaires. Les doublons se produisent lorsque plusieurs dictionnaires contiennent le même ensemble de clés et de valeurs.

Pour y parvenir, une approche consiste à créer un dictionnaire temporaire dans lequel les clés sont les identifiants uniques de chaque dictionnaire. Cela filtre les doublons car les dictionnaires ne peuvent avoir que des clés uniques. Les valeurs du dictionnaire temporaire représentent les dictionnaires d'origine.

En Python, cela peut être accompli en utilisant une compréhension de dictionnaire :

temp = {v["id"]: v for v in L}
unique_dicts = list(temp.values())

Voici un exemple :

L = [
    {"id": 1, "name": "john", "age": 34},
    {"id": 1, "name": "john", "age": 34},
    {"id": 2, "name": "hanna", "age": 30},
]

temp = {v["id"]: v for v in L}
unique_dicts = list(temp.values())

print(unique_dicts)

Cela affichera :

[{'id': 1, 'name': 'john', 'age': 34}, {'id': 2, 'name': 'hanna', 'age': 30}]

Comme vous pouvez le constater, le dictionnaire en double a été supprimé, ce qui a donné lieu à une liste de noms uniques. dictionnaires.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3