logo

Jak rozpakować słownik w Pythonie?

Słownik to zbiór kluczowa wartość pary w Pythonie. Aby uzyskać dostęp do jego wartości, można użyć kluczy słownika. Są jednak chwile, kiedy chcesz wyodrębnić pary klucz-wartość i przypisać je do zmiennych. Tutaj właśnie pojawia się rozpakowywanie słownika.

Aby rozpakować słownik w Pythonie, możesz użyć następującej składni:

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

Wyjście:

 John 30 New York 

W tym przykładzie mamy słownik mój_dykt z trzema parami klucz-wartość. Aby wyodrębnić wartości ze słownika i przypisać je do zmiennych, używamy metody wartości() metoda słownikowa. Wartości słownika są reprezentowane w postaci obiektu przypominającego listę zwracanego przez tę metodę. Wartości są następnie przypisywane do określonych zmiennych za pomocą metody operator rozpakowujący (*). Ponieważ odpowiada kolejności, w jakiej wartości pojawiają się w pliku wartości() W przypadku tej metody kluczowa jest kolejność, w jakiej przypisujemy zmienne.

Należy pamiętać, że liczba zmiennych i wartości słownikowych muszą być zgodne. Jeśli spróbujesz rozpakować słownik zawierający więcej lub mniej zmiennych niż wartości, otrzymasz komunikat Błąd wartości .

Możesz także rozpakować słownik do nazwanych zmiennych, używając składni rozpakowywania słownika:

 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) 

Wyjście:

 John 30 New York 

W tym przykładzie uzyskujemy dostęp do wartości słownika za pomocą ich kluczy i przypisujemy je do nazwanych zmiennych. Ta metoda jest pomocna, gdy chcesz wyodrębnić określone wartości ze słownika.

Wreszcie możesz skorzystać z ** operatora aby rozpakować słownik do nazwanych argumentów podczas wywoływania funkcji. Na przykład:

obiekt Java
 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) 

Wyjście:

 John is 30 years old and lives in New York 

W tym przykładzie definiujemy funkcję drukuj_osobę to wymaga trzech argumentów: imię Wiek , I miasto . Następnie tworzymy słownik mój_dykt zawierający wartości tych argumentów. Korzystamy ze słownika operator rozpakowujący** przekazać wartości słownika jako nazwane argumenty do funkcji. Efekt jest taki sam jak wywołanie print_person('John', 30, 'Nowy Jork') .