Eliminar duplicados de una lista de diccionarios
En ciertos escenarios, puede ser necesario eliminar entradas duplicadas de una lista de diccionarios. Los duplicados ocurren cuando varios diccionarios contienen el mismo conjunto de claves y valores.
Para lograr esto, un enfoque implica crear un diccionario temporal donde las claves son los identificadores únicos de cada diccionario. Esto filtra los duplicados porque los diccionarios solo pueden tener claves únicas. Los valores del diccionario temporal representan los diccionarios originales.
En Python, esto se puede lograr usando una comprensión del diccionario:
temp = {v["id"]: v for v in L}
unique_dicts = list(temp.values())
Aquí hay un ejemplo:
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)
Esto generará:
[{'id': 1, 'name': 'john', 'age': 34}, {'id': 2, 'name': 'hanna', 'age': 30}]
Como puede ver, el diccionario duplicado se eliminó, lo que resultó en una lista de diccionarios únicos.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3