Pitón | Obtener claves del diccionario como una lista
Dado un diccionario, escriba un programa Python para obtener las claves del diccionario como una lista.
Ejemplos:
Input : {1:'a', 2:'b', 3:'c'} Output : [1, 2, 3] Input : {'A' : 'ant', 'B' : 'ball'} Output : ['A', 'B'] Método 1: Obtenga las claves del diccionario como una lista usando dict.keys()
La función Python list() toma cualquier iterable como parámetro y devuelve una lista. En Python, iterable es el objeto sobre el que puedes iterar.
Python3
mydict> => {> 1> :> 'Geeks'> ,> 2> :> 'for'> ,> 3> :> 'geeks'> }> keysList> => list> (mydict.keys())> print> (keysList)> |
Producción
[1, 2, 3]
La complejidad temporal del programa es O (n), donde n es el número de claves en el diccionario.
La complejidad espacial del programa es O(n), donde n es el número de claves en el diccionario. Esto se debe a que el programa crea un nuevo objeto de lista con la misma cantidad de elementos que las claves del diccionario, lo que requiere memoria adicional.
Método 2: Obtenga las claves del diccionario como una lista usando For Loop y el método de agregar
En este método, iteraremos sobre cada clave usando el función dict.keys() y adjuntar a una nueva lista denominada lista.
Python3
# Python program to get> # dictionary keys as list> def> getList(> dict> ):> > list> => []> > for> key> in> dict> .keys():> > list> .append(key)> > > return> list> > # Driver program> dict> => {> 1> :> 'Geeks'> ,> 2> :> 'for'> ,> 3> :> 'geeks'> }> print> (getList(> dict> ))> |
Producción
[1, 2, 3]
Complejidad del tiempo: O(n)
Espacio auxiliar: O(n)
Método 3: Claves del diccionario para enumerar mediante comprensión de listas
Aquí, intentaremos acortar nuestro código usando la comprensión de listas en Python.
Python3
dict> => {> 1> :> 'Geeks'> ,> 2> :> 'for'> ,> 3> :> 'geeks'> }> keysList> => [key> for> key> in> dict> ]> print> (keysList)> |
Producción
[1, 2, 3]
Complejidad del tiempo: O (n), donde n es el número de pares clave-valor en el diccionario.
Espacio auxiliar: O(n), para almacenar las claves y valores en el diccionario.
Método 4: Claves del diccionario para enumerar usando Desempaquetar con *
Descomprimir con * funciona con cualquier objeto iterable y, dado que los diccionarios devuelven sus claves cuando se itera, puede crear fácilmente una lista usándola dentro de una lista literal.
Python3
def> getList(> dict> ):> > return> [> *> dict> ]> # Driver program> dict> => {> 'a'> :> 'Geeks'> ,> 'b'> :> 'For'> ,> 'c'> :> 'geeks'> }> print> (getList(> dict> ))> |
Producción:
['a', 'b', 'c']
Complejidad del tiempo: O(N)
Espacio auxiliar: O(N)
Método 5: Claves del diccionario para la lista usando itemgetter
El itemgetter del módulo operador devuelve un objeto invocable que recupera un elemento de su operando usando la información del operando. __obtiene el objeto__ () método. Este método se asigna a dict.items() y luego se encasilla en la lista.
Python3
from> operator> import> itemgetter> def> getList(> dict> ):> > return> list> (> map> (itemgetter(> 0> ),> dict> .items()))> # Driver program> dict> => {> 'a'> :> 'Geeks'> ,> 'b'> :> 'For'> ,> 'c'> :> 'geeks'> }> print> (getList(> dict> ))> |
Producción:
['a', 'b', 'c']
Método 6: uso de Map y lambda
Otro método para obtener las claves del diccionario como una lista es utilizar la función map() en combinación con una función lambda.
A continuación se muestra un ejemplo de cómo se puede hacer esto:
Python3
def> get_keys_as_list(dictionary):> > return> list> (> map> (> lambda> x: x[> 0> ], dictionary.items()))> # Driver program> dictionary> => {> 1> :> 'Geeks'> ,> 2> :> 'for'> ,> 3> :> 'geeks'> }> print> (get_keys_as_list(dictionary))> #This code is contributed by Edula Vinay Kumar Reddy> |
Producción
[1, 2, 3]
Este enfoque utiliza la función map() para aplicar la función lambda a cada elemento del diccionario, que devuelve la clave de cada elemento. El objeto iterador resultante luego se pasa a la función list() para crear una lista de claves.
Este enfoque tiene una complejidad temporal de O(n) y una complejidad espacial auxiliar de O(n), donde n es el número de claves en el diccionario. Es una forma concisa y eficaz de obtener las claves del diccionario en forma de lista.