logo

Hogyan lehet kicsomagolni egy szótárt a pythonban?

A szótár a kulcs érték párok Pythonban. A szótár kulcsai használhatók az értékek eléréséhez. Vannak azonban olyan esetek, amikor ki szeretné bontani a kulcs-érték párokat, és változókhoz rendelni. Itt jön be a szótár kicsomagolása.

A Pythonban lévő szótár kicsomagolásához a következő szintaxist használhatja:

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

Kimenet:

 John 30 New York 

Ebben a példában van egy szótárunk my_dict három kulcs-érték párral. A szótár értékeinek kinyeréséhez és változókhoz rendeléséhez használjuk a értékek() a szótár módszere. A szótár értékei egy listaszerű objektumban jelennek meg, amelyet ez a metódus ad vissza. Az értékeket ezt követően a rendszer adott változókhoz rendeli a kicsomagoló operátor (*). Mivel megegyezik az értékek megjelenési sorrendjével a értékek() módszer, a változók hozzárendelésének sorrendje döntő.

Ügyeljen arra, hogy a változók számának és a szótári értékeknek egyeznie kell. Ha olyan szótárt próbál kicsomagolni, amelynél több vagy kevesebb változó van, mint az érték, akkor a ValueError .

A szótár kicsomagolási szintaxisának használatával is kicsomagolhatja a szótárat elnevezett változókba:

 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) 

Kimenet:

 John 30 New York 

Ebben a példában a szótár értékeit a kulcsaikkal érjük el, és elnevezett változókhoz rendeljük. Ha konkrét értékeket kell kivonnia egy szótárból, ez a módszer hasznos.

Végül használhatja a ** operátor a szótár kicsomagolása elnevezett argumentumokba függvény hívásakor. Például:

 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) 

Kimenet:

 John is 30 years old and lives in New York 

Ebben a példában egy függvényt definiálunk print_person ehhez három érv szükséges: név életkor , és város . Ezt követően szótárt készítünk my_dict amely ezen argumentumok értékeit tartalmazza. A szótárat használjuk kicsomagoló operátor ** hogy a szótár értékeit elnevezett argumentumként adja át a függvénynek. Az eredmény ugyanaz, mint a hívás print_person('John', 30, 'New York') .