Python | Obtener valores únicos de la lista del diccionario

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))
Producción :

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_iterablefunció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))
Producción :

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *