Convertir un diccionario en una lista en Python
-
Convertir claves de diccionario a una lista usando el método
keys()
en Python -
Convertir valores de diccionario a una lista usando el método
values()
en Python - Convertir el diccionario en una lista de tuplas en Python
Un diccionario en Python es una combinación de pares clave-valor
. Con la ayuda de la clave
, puede acceder a los valores dentro del diccionario. Ahora, convertir un diccionario en una lista en Python puede significar cosas diferentes. Cualquiera,
- Puede separar las claves y convertirlas en una Lista
- Puede separar los valores y convertirlos en una lista.
- Convierta el par clave y valor del diccionario en una lista de tuplas.
Convertir claves de diccionario a una lista usando el método keys()
en Python
Suponga que tiene un diccionario denominado dictionary
con cuatro pares de clave-valor
.
dictionary = {"a": "Apple", "b": "Banana", "c": "Cherries", "d": "Dragon Fruit"}
listOfKeys = dictionary.keys()
print("Type of variable listOfKeys is: ", type(listOfKeys))
listOfKeys = list(listOfKeys)
print("Printing the entire list containing all Keys: ")
print(listOfKeys)
print("Printing individual Keys stored in the list:")
for key in listOfKeys:
print(key)
Producción :
Type of variable listOfKeys is: <class 'dict_keys'>
Printing the entire list containing all Keys:
['a', 'b', 'c', 'd']
Printing individual Keys stored in the list:
a
b
c
d
Puede utilizar el método keys()
, que extraerá todas las claves
del diccionario y luego almacenará el resultado (todas las claves) dentro de la variable listOfKeys
.
Ahora tienes que convertir la variable listOfKeys
en una lista con la ayuda de la función list()
porque en este punto si verificas el tipo de la variable listOfKeys
entonces será <class 'dict_keys'>
. Es por eso que estamos cambiando el tipo de variable a Lista
y luego lo almacenamos en la misma variable, es decir, listOfKeys
.
En este punto, ha separado correctamente todas las claves del diccionario utilizando la función keys()
y las ha convertido en una lista. Finalmente, para imprimir los elementos dentro de la lista, debe usar un bucle for
, que itera sobre cada elemento y lo imprime.
Convertir valores de diccionario a una lista usando el método values()
en Python
El método values()
funciona de la misma forma que el método keys()
. La única diferencia es que el método values()
devuelve todos los valores del diccionario en lugar de las claves.
dictionary = {"a": "Apple", "b": "Banana", "c": "Cherries", "d": "Dragon Fruit"}
listOfValues = dictionary.values()
print("Type of variable listOfValues is: ", type(listOfValues))
listOfValues = list(listOfValues)
print("Printing the entire list containing all values: ")
print(listOfValues)
print("Printing individual values stored in the list:")
for val in listOfValues:
print(val)
Producción :
Type of variable listOfValues is: <class 'dict_values'>
Printing the entire list containing all values:
['Apple', 'Banana', 'Cherries', 'Dragon Fruit']
Printing individual values stored in the list:
Apple
Banana
Cherries
Dragon Fruit
Utiliza la función values()
en el diccionario
y luego almacena el resultado devuelto por la función values()
dentro de la variable listOfValues
.
Si marca el tipo de la variable listOfValues
entonces su tipo será de la clase <class 'dict_values'>
. Pero quieres que sea de la clase <class 'list'>
. Por lo tanto, debe convertir la variable listOfValues
en una lista usando la función list()
y luego almacenar el resultado en la misma variable, es decir, listOfValues
.
Por último, imprima todos los valores dentro de la lista listOfValues
usando un bucle.
Convertir el diccionario en una lista de tuplas en Python
Un diccionario se puede convertir en una lista de tuplas de dos formas. Una es la función items()
y la otra es la función zip()
.
1. Función items()
La función items()
convierte los elementos del diccionario en <class 'dict_items'>
y el resultado se almacena en la variable myList
. La myList
debe convertirse en una lista, por lo que debe encasillarla usando la función list()
y luego almacenar el resultado en la misma variable, es decir, myList
.
dictionary = {"a": "Apple", "b": "Banana", "c": "Cherries", "d": "Dragon Fruit"}
myList = dictionary.items()
print(type(myList))
myList = list(myList)
print(myList)
Producción :
<class 'dict_items'>
[('a', 'Apple'), ('b', 'Banana'), ('c', 'Cherries'), ('d', 'Dragon Fruit')]
2. Función zip()
La función zip()
toma dos argumentos primero es la clave que usa la función keys()
y segundo es la valor usando la función values()
del diccionario. Luego devuelve un objeto zip
que puede almacenar dentro de una variable, en este caso, myList
.
dictionary = {"a": "Apple", "b": "Banana", "c": "Cherries", "d": "Dragon Fruit"}
myList = zip(dictionary.keys(), dictionary.values())
print(type(myList))
myList = list(myList)
print(myList)
Producción :
<class 'zip'>
[('a', 'Apple'), ('b', 'Banana'), ('c', 'Cherries'), ('d', 'Dragon Fruit')]
Ahora tienes que convertir el objeto zip
en una lista
usando la función list()
. Luego puede almacenar el resultado final dentro de la misma variable llamada myList
o dentro de una variable diferente dependiendo de su requerimiento y al final imprimir la lista completa.
3. iteritems()
en Python 2.x
En Python v2.x, también tiene una función iteritems()
, que funciona casi de la misma manera que la función items()
.
El iteritems()
toma cada elemento del diccionario
y lo convierte en un tipo diferente. Si marca el tipo de la variable myList
, será de tipo <type 'dictionary-itemiterator'>
. Entonces, tienes que convertirlo en una Lista usando la función list()
. Si marca el tipo de la variable myList
entonces será de tipo <type 'list'>
y si lo imprime entonces los elementos estarán en forma de lista de tuplas.
dictionary = {"a": "Apple", "b": "Banana", "c": "Cherries", "d": "Dragon Fruit"}
myList = dictionary.iteritems()
print("Type of myList is: ", type(myList))
myList = list(myList)
print(myList)
Producción :
('Type of myList is: ', <type 'dictionary-itemiterator'>)
[('a', 'Apple'), ('c', 'Cherries'), ('b', 'Banana'), ('d', 'Dragon Fruit')]
Asegúrese de ejecutar el código anterior en el compilador Python v2.x; de lo contrario, obtendrá un error porque no tenemos este método en Python v3.x.
Sahil is a full-stack developer who loves to build software. He likes to share his knowledge by writing technical articles and helping clients by working with them as freelance software engineer and technical writer on Upwork.
LinkedInArtículo relacionado - Python Dictionary
- Cómo comprobar si existe una clave en un diccionario en Python
- Cómo obtener todos los archivos de un directorio
- Cómo encontrar el valor máximo en el Diccionario Python
- Cómo ordenar un diccionario Python por valor
- Cómo fusionar dos diccionarios en Python 2 y 3