Dado un diccionario como listas de valores, inviértalo, es decir, asigne elementos de la lista a claves y cree una nueva lista de valores.
Entrada : test_dict = {1: [2, 3], 2: [3], 3: [1]}
Salida : {2: [1], 3: [1, 2], 1: [3]}
Explicación : Enumere los elementos mapeados con sus claves.Entrada : test_dict = {1: [2, 3, 4]}
Salida : {2: [1], 3: [1], 4: [1]}
Explicación : enumera los elementos asignados con sus claves.
Método: Usando defaultdict() + loop
Esta es una forma en la que se puede realizar esta tarea. En esto, inicializamos las claves de resultado con la lista de diccionarios, e iteramos usando bucle para asignar cada valor a sus claves, y reformamos la lista de valores del diccionario de resultados.
Python3
# Python3 code to demonstrate working of # Inverse Dictionary Values List # Using from collections import defaultdict # initializing dictionary test_dict = {1: [2, 3], 2: [3], 3: [1], 4: [2, 1]} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # initializing empty list as Values res = defaultdict(list) # using loop to perform reverse mapping for keys, vals in test_dict.items(): for val in vals: res[val].append(keys) # printing result print("The required result : " + str(dict(res)))
The original dictionary is : {1: [2, 3], 2: [3], 3: [1], 4: [2, 1]} The required result : {2: [1, 4], 3: [1, 2], 1: [3, 4]}
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