logo

¿Cómo descomprimir un diccionario en Python?

Un diccionario es una colección de valor clave pares en Python. Las claves de un diccionario se pueden utilizar para acceder a sus valores. Sin embargo, hay ocasiones en las que desea extraer los pares clave-valor y asignarlos a variables. Aquí es donde entra en juego el desempaquetado del diccionario.

Para descomprimir un diccionario en Python, puede utilizar la siguiente sintaxis:

 my_dict = {'name': 'John', 'age': 30, 'city': 'New York'} name, age, city = my_dict.values() print(name) print(age) print(city) 

Producción:

img css alinear
 John 30 New York 

En este ejemplo, tenemos un diccionario. mi_dict con tres pares clave-valor. Para extraer los valores del diccionario y asignarlos a variables, utilizamos el valores() método del diccionario. Los valores del diccionario se representan en un objeto similar a una lista que devuelve este método. Posteriormente, los valores se asignan a variables específicas utilizando el Operador de desembalaje (*). Como coincide con el orden en que aparecen los valores en el valores() método, el orden en el que asignamos las variables es crucial.

Tenga en cuenta que el número de variables y los valores del diccionario deben coincidir. Si intenta descomprimir un diccionario con más o menos variables que valores, obtendrá un Error de valor .

También puede descomprimir un diccionario en variables con nombre utilizando la sintaxis de descompresión del diccionario:

 my_dict = {'name': 'John', 'age': 30, 'city': 'New York'} name, age, city = my_dict['name'], my_dict['age'], my_dict['city'] print(name) print(age) print(city) 

Producción:

 John 30 New York 

En este ejemplo, accedemos a los valores del diccionario usando sus claves y los asignamos a variables con nombre. Cuando necesite extraer valores específicos de un diccionario, este método resulta útil.

Finalmente, puedes utilizar el ** operador para descomprimir un diccionario en argumentos con nombre al llamar a una función. Por ejemplo:

 def print_person(name, age, city): print(f'{name} is {age} years old and lives in {city}') my_dict = {'name': 'John', 'age': 30, 'city': 'New York'} print_person(**my_dict) 

Producción:

 John is 30 years old and lives in New York 

En este ejemplo, definimos una función imprimir_persona eso requiere tres argumentos: nombre Edad , y ciudad . Después de eso, creamos un diccionario. mi_dict que contiene los valores de estos argumentos. Usamos el diccionario operador de desembalaje ** para pasar los valores del diccionario como argumentos con nombre a la función. El resultado es el mismo que llamar print_person('Juan', 30, 'Nueva York') .