Dada la lista de valores y la lista de claves, convierta estos valores en pares de valores clave en forma de lista de diccionarios.
Entrada : test_list = [“Gfg”, 3, “is”, 8], key_list = [“name”, “id”]
Salida : [{‘name’: ‘Gfg’, ‘id’: 3}, {‘ name’: ‘is’, ‘id’: 8}]
Explicación : valores asignados por clave personalizada, «name» -> «Gfg», «id» -> 3.Entrada : test_list = [“Gfg”, 10], key_list = [“name”, “id”]
Salida : [{‘name’: ‘Gfg’, ‘id’: 10}]
Explicación : Conversión de listas a lista de registros por mapeo de claves.
Método n. ° 1: usar loop + comprensión de diccionario
Esta es una de las formas en que se puede realizar esta tarea. En esto, realizamos el mapeo de valores utilizando la comprensión del diccionario. La iteración se realiza mediante bucle.
Python3
# Python3 code to demonstrate working of # Convert List to List of dictionaries # Using dictionary comprehension + loop # initializing lists test_list = ["Gfg", 3, "is", 8, "Best", 10, "for", 18, "Geeks", 33] # printing original list print("The original list : " + str(test_list)) # initializing key list key_list = ["name", "number"] # loop to iterate through elements # using dictionary comprehension # for dictionary construction n = len(test_list) res = [] for idx in range(0, n, 2): res.append({key_list[0]: test_list[idx], key_list[1] : test_list[idx + 1]}) # printing result print("The constructed dictionary list : " + str(res))
La lista original: [‘Gfg’, 3, ‘is’, 8, ‘Best’, 10, ‘for’, 18, ‘Geeks’, 33]
La lista del diccionario construido: [{‘name’: ‘Gfg’, ‘número’: 3}, {‘nombre’: ‘es’, ‘número’: 8}, {‘nombre’: ‘Mejor’, ‘número’: 10}, {‘nombre’: ‘para’, ‘número ‘: 18}, {‘nombre’: ‘Geeks’, ‘número’: 33}]
Método #2: Uso de comprensión de diccionario + comprensión de lista
La combinación de las funciones anteriores se utiliza para resolver este problema. En esto, realizamos una tarea similar al método anterior. Pero la diferencia es que se realiza como taquigrafía.
Python3
# Python3 code to demonstrate working of # Convert List to List of dictionaries # Using zip() + list comprehension # initializing lists test_list = ["Gfg", 3, "is", 8, "Best", 10, "for", 18, "Geeks", 33] # printing original list print("The original list : " + str(test_list)) # initializing key list key_list = ["name", "number"] # using list comprehension to perform as shorthand n = len(test_list) res = [{key_list[0]: test_list[idx], key_list[1]: test_list[idx + 1]} for idx in range(0, n, 2)] # printing result print("The constructed dictionary list : " + str(res))
La lista original: [‘Gfg’, 3, ‘is’, 8, ‘Best’, 10, ‘for’, 18, ‘Geeks’, 33]
La lista del diccionario construido: [{‘name’: ‘Gfg’, ‘número’: 3}, {‘nombre’: ‘es’, ‘número’: 8}, {‘nombre’: ‘Mejor’, ‘número’: 10}, {‘nombre’: ‘para’, ‘número ‘: 18}, {‘nombre’: ‘Geeks’, ‘número’: 33}]
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