logo

Com descomprimir un diccionari a Python?

Un diccionari és una col·lecció de valor-clau parelles en Python. Les claus d'un diccionari es poden utilitzar per accedir als seus valors. Tanmateix, hi ha moments en què voleu extreure els parells clau-valor i assignar-los a variables. Aquí és on entra el desembalatge del diccionari.

exemples d'autòmats dfa

Per desempaquetar un diccionari a Python, podeu utilitzar la sintaxi següent:

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

Sortida:

 John 30 New York 

En aquest exemple, tenim un diccionari el meu_dicte amb tres parells clau-valor. Per extreure els valors del diccionari i assignar-los a variables, fem servir el valors () mètode del diccionari. Els valors del diccionari es representen en un objecte semblant a una llista que retorna aquest mètode. Els valors s'assignen posteriorment a variables específiques mitjançant el operador de desembalatge (*). Com que coincideix amb l'ordre en què apareixen els valors al fitxer valors () mètode, l'ordre en què assignem les variables és crucial.

Tingueu en compte que el nombre de variables i els valors del diccionari han de coincidir. Si intenteu desempaquetar un diccionari amb més o menys variables que valors, obtindreu un ValueError .

També podeu descomprimir un diccionari en variables amb nom utilitzant la sintaxi de desempaquetat del diccionari:

 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) 

Sortida:

 John 30 New York 

En aquest exemple, accedim als valors del diccionari mitjançant les seves claus i els assignem a variables amb nom. Quan necessiteu extreure valors específics d'un diccionari, aquest mètode és útil.

Finalment, podeu utilitzar el ** operador per descomprimir un diccionari en arguments amb nom quan crida a una funció. Per exemple:

 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) 

Sortida:

 John is 30 years old and lives in New York 

En aquest exemple, definim una funció imprimir_persona que pren tres arguments: nom, edat , i ciutat . Després d'això, creem un diccionari el meu_dicte que conté els valors d'aquests arguments. Utilitzem el diccionari operador de desembalatge ** per passar els valors del diccionari com a arguments anomenats a la funció. El resultat és el mateix que trucar print_person('John', 30, 'Nova York') .