logo

Kako raspakirati rječnik u pythonu?

Rječnik je zbirka ključ-vrijednost parovi u Pythonu. Ključevi rječnika mogu se koristiti za pristup njegovim vrijednostima. Međutim, ponekad želite izdvojiti parove ključ-vrijednost i dodijeliti ih varijablama. Ovdje dolazi raspakiranje rječnika.

Za raspakiranje rječnika u Pythonu, možete koristiti sljedeću sintaksu:

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

Izlaz:

 John 30 New York 

U ovom primjeru imamo rječnik moj_dikt s tri para ključ-vrijednost. Da bismo izdvojili vrijednosti rječnika i dodijelili ih varijablama, koristimo vrijednosti() metoda rječnika. Vrijednosti rječnika predstavljene su u objektu nalik popisu koji ova metoda vraća. Vrijednosti se naknadno dodjeljuju određenim varijablama pomoću operator za raspakiranje (*). Budući da odgovara redoslijedu u kojem se vrijednosti pojavljuju u vrijednosti() metoda, redoslijed kojim dodjeljujemo varijable je ključan.

Imajte na umu da se broj varijabli i vrijednosti rječnika moraju podudarati. Ako pokušate raspakirati rječnik s više ili manje varijabli nego vrijednosti, dobit ćete ValueError .

Također možete raspakirati rječnik u imenovane varijable pomoću sintakse za raspakiranje rječnika:

 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) 

Izlaz:

 John 30 New York 

U ovom primjeru pristupamo vrijednostima rječnika pomoću njihovih ključeva i dodjeljujemo ih imenovanim varijablama. Kada trebate izvući određene vrijednosti iz rječnika, ova je metoda od pomoći.

Konačno, možete koristiti ** operator za raspakiranje rječnika u imenovane argumente prilikom pozivanja funkcije. Na primjer:

 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) 

Izlaz:

niz datuma java
 John is 30 years old and lives in New York 

U ovom primjeru definiramo funkciju ispis_osobe za to su potrebna tri argumenta: ime, godine , i Grad . Nakon toga izrađujemo rječnik moj_dikt koji sadrži vrijednosti ovih argumenata. Koristimo se rječnikom operater za raspakiranje ** za prosljeđivanje vrijednosti rječnika kao imenovanih argumenata funkciji. Rezultat je isti kao i poziv print_person('John', 30, 'New York') .