A veces, mientras trabajamos con los diccionarios de Python, podemos tener un problema en el que necesitamos encontrar los valores únicos en todos los diccionarios de una lista. Este tipo de utilidad puede ocurrir en caso de que trabajemos con datos similares y deseemos extraer los únicos. Analicemos ciertas formas en que se puede realizar esta tarea.
Método #1: Usar set() + values()
+ comprensión del diccionario
La combinación de estos métodos juntos puede ayudarnos a lograr la tarea de obtener los valores únicos. La función de valores nos ayuda a obtener los valores del diccionario, el conjunto nos ayuda a obtener el único de ellos y la comprensión del diccionario para iterar a través de la lista.
# Python3 code to demonstrate working of # Get Unique values from list of dictionary # Using set() + values() + dictionary comprehension # Initialize list test_list = [{'gfg' : 1, 'is' : 2}, {'best' : 1, 'for' : 3}, {'CS' : 2}] # printing original list print("The original list : " + str(test_list)) # Using set() + values() + dictionary comprehension # Get Unique values from list of dictionary res = list(set(val for dic in test_list for val in dic.values())) # printing result print("The unique values in list are : " + str(res))
La lista original: [{‘gfg’: 1, ‘is’: 2}, {‘best’: 1, ‘for’: 3}, {‘CS’: 2}] Los valores únicos en la lista son: [
1 , 2, 3]
Método #2: Usar set() + values()
+from_iterable()
La combinación de las funciones anteriores se puede usar para realizar esta tarea en particular. Es igual que el método anterior, pero la parte de la iteración la realiza la from_iterable
función.
# Python3 code to demonstrate working of # Get Unique values from list of dictionary # Using set() + values() + from_iterable() from itertools import chain # Initialize list test_list = [{'gfg' : 1, 'is' : 2}, {'best' : 1, 'for' : 3}, {'CS' : 2}] # printing original list print("The original list : " + str(test_list)) # Using set() + values() + from_iterable() # Get Unique values from list of dictionary res = list(set(chain.from_iterable(sub.values() for sub in test_list))) # printing result print("The unique values in list are : " + str(res))
La lista original: [{‘gfg’: 1, ‘is’: 2}, {‘best’: 1, ‘for’: 3}, {‘CS’: 2}] Los valores únicos en la lista son: [
1 , 2, 3]
Publicación traducida automáticamente
Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA