Python: agregue la clave de valores personalizados en la lista de diccionarios

Dada una lista de diccionarios, una lista personalizada y una clave, agregue la clave a cada diccionario con los valores de la lista en orden.

Entrada : test_list = [{“Gfg”: 6, “es”: 9, “mejor”: 10}, {“Gfg”: 8, “es”: 11, “mejor”: 19}, {“Gfg”: 2, «es»: 16, «mejor»: 10}], K = «Geeks», append_list = [6, 7, 4]
Salida : [{«Gfg»: 6, «es»: 9, «mejor» : 10, “Geeks”: 6}, {“Gfg”: 8, “es”: 11, “mejor”: 19, “Geeks”: 7}, {“Gfg”: 2, “es”: 16, “ mejor”: 10, “Geeks”: 4}]
Explicación : se agregó la tecla “Geeks” en cada diccionario.

Entrada : test_list = [{«Gfg»: 6, «es»: 9, «mejor»: 10}], K = «CS», append_list = [6]
Salida : [{«Gfg»: 6, «es» : 9, «mejor»: 10, «CS»: 6}]
Explicación : se agregó la tecla «CS» en cada diccionario con 6 como valor.

Método n. ° 1: usar bucle + enumerar()

Esta es una de las formas en que se puede realizar esta tarea. En esto, iteramos a través del diccionario usando enumerate() para obtener índices, y seguimos asignando a cada clave del diccionario su valor de índice.

Python3

# Python3 code to demonstrate working of 
# Add custom values key in List of dictionaries
# Using loop
  
# initializing lists
test_list = [{"Gfg" : 6, "is" : 9, "best" : 10}, 
             {"Gfg" : 8, "is" : 11, "best" : 19},
             {"Gfg" : 2, "is" : 16, "best" : 10},
             {"Gfg" : 12, "is" : 1, "best" : 8},
             {"Gfg" : 22, "is" : 6, "best" : 8}]
  
# printing original list
print("The original list : " + str(test_list))
  
# initializing Key 
K = "CS"
  
# initializing list 
append_list = [6, 7, 4, 3, 9]
  
# using enumerate() to iterate for index and values
for idx, ele in enumerate(test_list):
        ele[K] = append_list[idx]
  
# printing result 
print("The dictionary list after addition : " + str(test_list))
Producción

The original list : [{'Gfg': 6, 'is': 9, 'best': 10}, {'Gfg': 8, 'is': 11, 'best': 19}, {'Gfg': 2, 'is': 16, 'best': 10}, {'Gfg': 12, 'is': 1, 'best': 8}, {'Gfg': 22, 'is': 6, 'best': 8}]
The dictionary list after addition : [{'Gfg': 6, 'is': 9, 'best': 10, 'CS': 6}, {'Gfg': 8, 'is': 11, 'best': 19, 'CS': 7}, {'Gfg': 2, 'is': 16, 'best': 10, 'CS': 4}, {'Gfg': 12, 'is': 1, 'best': 8, 'CS': 3}, {'Gfg': 22, 'is': 6, 'best': 8, 'CS': 9}]

Método #2: Usar zip() + loop

Esta es otra forma más en la que se puede realizar esta tarea. En esto, realizamos el mapeo de valores de lista con cada diccionario usando zip().

Python3

# Python3 code to demonstrate working of 
# Add custom values key in List of dictionaries
# Using zip() + loop
  
# initializing lists
test_list = [{"Gfg" : 6, "is" : 9, "best" : 10}, 
             {"Gfg" : 8, "is" : 11, "best" : 19},
             {"Gfg" : 2, "is" : 16, "best" : 10},
             {"Gfg" : 12, "is" : 1, "best" : 8},
             {"Gfg" : 22, "is" : 6, "best" : 8}]
  
# printing original list
print("The original list : " + str(test_list))
  
# initializing Key 
K = "CS"
  
# initializing list 
append_list = [6, 7, 4, 3, 9]
  
# zip() used to bind index wise 
# list and dictionary
for dic, lis in zip(test_list, append_list):
  dic[K] = lis
  
# printing result 
print("The dictionary list after addition : " + str(test_list))
Producción

The original list : [{'Gfg': 6, 'is': 9, 'best': 10}, {'Gfg': 8, 'is': 11, 'best': 19}, {'Gfg': 2, 'is': 16, 'best': 10}, {'Gfg': 12, 'is': 1, 'best': 8}, {'Gfg': 22, 'is': 6, 'best': 8}]
The dictionary list after addition : [{'Gfg': 6, 'is': 9, 'best': 10, 'CS': 6}, {'Gfg': 8, 'is': 11, 'best': 19, 'CS': 7}, {'Gfg': 2, 'is': 16, 'best': 10, 'CS': 4}, {'Gfg': 12, 'is': 1, 'best': 8, 'CS': 3}, {'Gfg': 22, 'is': 6, 'best': 8, 'CS': 9}]

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 *