Python | Segregación de valores de clave

Muchas veces, cuando tenemos el requisito de separar los valores de una clave de diccionario en caso de que tengamos una lista de diccionarios y necesitemos separar los valores de las diferentes claves. Esta es una utilidad bastante útil utilizada en el desarrollo web. Vamos a discutir ciertas formas en que esto se puede hacer. Método n.º 1: Uso de la comprensión de listas + tupla() La comprensión de listas se puede combinar con la función de tupla y se puede usar para realizar esta tarea en particular. La comprensión de listas hace la tarea de segregación y la función de tupla se usa para ponerlos en tuplas separadas. 

Python3

# Python3 code to demonstrate
# segregation of keys and values
# using list comprehension + tuple()
 
# initializing list of dictionaries
test_list = [{'Nikhil' : 1, 'Akash' : 2},
             {'Nikhil' : 3, 'Akash' : 4}]
 
# printing original list
print("The original list : " +  str(test_list))
 
# using list comprehension + tuple()
# to segregate keys and values
res = [tuple(i["Nikhil"] for i in test_list), tuple(i["Akash"]
                                          for i in test_list)]
 
# printing result
print("The segregated keys and values : " + str(res))
Producción : 

The original list : [{'Akash': 2, 'Nikhil': 1}, {'Akash': 4, 'Nikhil': 3}]
The segregated keys and values : [(1, 3), (2, 4)]

  Método #2: Usar map() + zip() + list() Estas funciones también se pueden combinar para lograr esta funcionalidad particular. La función map se usa para extraer los valores, la función zip se usa para hacer la segregación. Y la función de lista se usa al final para vincular el resultado a un diccionario. 

Python3

# Python3 code to demonstrate
# segregation of keys and values
# using map() + list() + zip()
 
# initializing list of dictionaries
test_list = [{'Nikhil' : 1, 'Akash' : 2},
             {'Nikhil' : 3, 'Akash' : 4}]
 
# printing original list
print("The original list : " +  str(test_list))
 
# using map() + list() + zip()
# to segregate keys and values
res = list(zip(*map(dict.values, test_list)))
 
# printing result
print("The segregated keys and values : " + str(res))
Producción : 

The original list : [{'Akash': 2, 'Nikhil': 1}, {'Akash': 4, 'Nikhil': 3}]
The segregated keys and values : [(2, 4), (1, 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 *