A veces, mientras trabajamos con diccionarios, podemos tener un problema en el que tenemos listas como su valor y deseamos tenerlo de forma acumulativa en una sola lista por concatenación. Este problema puede ocurrir en el dominio de desarrollo web. Analicemos ciertas formas en que se puede realizar esta tarea.
Método #1: Usarsum() + values()
Este es el método más recomendado y un delineador para realizar esta tarea. En esto, accedemos a todos los valores de la lista usando values()
y la utilidad de concatenación se realiza usando sum()
.
# Python3 code to demonstrate working of # Concatenating dictionary value lists # Using sum() + values() # initializing dictionary test_dict = {"Gfg" : [4, 5], "is" : [6, 8], "best" : [10]} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # Concatenating dictionary value lists # Using sum() + values() res = sum(test_dict.values(), []) # printing result print("The Concatenated list values are : " + str(res))
The original dictionary is : {'Gfg': [4, 5], 'best': [10], 'is': [6, 8]} The Concatenated list values are : [4, 5, 10, 6, 8]
Método #2: Usar chain() + * operator
Esta tarea también se puede realizar usando la combinación de estos métodos. En estos, solo usamos la función incorporada de chain
para la concatenación a la lista y el operador * se usa para acceder a todos los valores de la lista en uno.
# Python3 code to demonstrate working of # Concatenating dictionary value lists # Using chain() + * operator from itertools import chain # initializing dictionary test_dict = {"Gfg" : [4, 5], "is" : [6, 8], "best" : [10]} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # Concatenating dictionary value lists # Using chain() + * operator res = list(chain(*test_dict.values())) # printing result print("The Concatenated list values are : " + str(res))
The original dictionary is : {'Gfg': [4, 5], 'best': [10], 'is': [6, 8]} The Concatenated list values are : [4, 5, 10, 6, 8]
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