La manipulación de datos ocurre mucho en la programación, dependiendo del problema que pretenda resolver. Es posible que a menudo se encuentre convirtiendo una estructura de datos en otra. Algunos tipos son tan similares que la conversión entre ellos es un proceso sencillo.
En Python, convertir un diccionario en una lista anidada o aplanada es una conversión popular que se encontrará realizando.
Convierta un diccionario de Python en una lista usando un bucle for
Él por loop le brinda más tracción en sus datos al convertir un diccionario de Python en una lista.
Por ejemplo, el siguiente código convierte un diccionario en una lista anidada:
miDiccionario = {"A": "Python", "B": "JavaScript", "C": "Nodo"}
lista convertida = []por i en mi diccionario:
convertList.append([i, myDictionary[i]])imprimir (lista convertida)
# Salida: [['A', 'Python'], ['B', 'JavaScript'], ['C', 'Nodo']]
El código anterior inserta cada tecla (i) y valor (miDiccionario[i]) se emparejan en listas individuales y las agrega a una lista vacía.
Es lo mismo que escribir:
por valor clave en miDiccionario.items():
convertList.append([clave, valor])
También puede colocar cada par en un conjunto o tupla. Todo lo que necesita hacer es reemplazar las llaves cuadradas ([]) alrededor de valor clave emparejar con llaves ({}) o paréntesis (()) respectivamente.
También puede lograr esto usando un por bucle junto con Función de comprensión de listas de Python:
convertList = [[i, myDictionary[i]] por i en mi diccionario]
Función para convertir un diccionario de Python en una lista plana
Mientras que lo anterior por las opciones de bucle producen una lista anidada, puede desestructurarla aún más en una lista directa si eso es lo que desea.
La siguiente función lo hace:
definitivamenteconvertToStraightList(ejemploDict):
listaplana = []por valor clave en muestraDict.items():
flatList.extend([clave, valor])devolver listaplana
print (convertToStraightList (miDiccionario))
# Salida: ['A', 'Python', 'B', 'JavaScript', 'C', 'Nodo']
La función anterior devuelve una lista aplanada y el concepto es simple. El ciclo agrega cada llave y valor emparejar a una lista que la función devuelve cuando finaliza.
Uso de funciones integradas de una sola línea
Ambos mapa y Código Postal funciones permiten soluciones Python de una línea a este problema, con diferentes resultados. Pueden ser más adecuados que los por loop, dependiendo de su problema, y ciertamente son más convenientes.
Él Código Postal produce una lista anidada de tuplas:
convertList = lista (zip (myDictionary.keys(), myDictionary.values()))
imprimir (lista convertida)
# Salida: [('A', 'Python'), ('B', 'JavaScript'), ('C', 'Nodo')]
Él mapa La función, por otro lado, da una lista de listas:
convertList = lista (mapa (lista, myDictionary.items()))
imprimir (lista convertida)
# Salida: [['A', 'Python'], ['B', 'JavaScript'], ['C', 'Nodo']]
Convierta entre listas de Python y diccionarios de cualquier manera
Estas diferentes formas de convertir un diccionario en una lista son bastante simples en Python. Por lo tanto, puede convertir un diccionario en una lista, pero también puede hacer lo contrario al convertir una lista de Python en un diccionario.
Cómo convertir una lista en un diccionario en Python
Leer siguiente
Temas relacionados
- Programación
- Programación
- Pitón
Sobre el Autor

A Idowu le apasiona la tecnología inteligente y la productividad. En su tiempo libre, juega con la codificación y cambia al tablero de ajedrez cuando está aburrido, pero también le encanta romper con la rutina de vez en cuando. Su pasión por mostrarle a la gente el camino alrededor de la tecnología moderna lo motiva a escribir más.
Suscríbete a nuestro boletín
¡Únase a nuestro boletín para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!
Haga clic aquí para suscribirse