W tym artykule omówimy Jak iterować po słowniku w Pythonie. Słownik w Pythonie to zbiór wartości danych używany do przechowywania wartości danych jak mapa, w przeciwieństwie do innych typów danych, które przechowują tylko jedną wartość jako element. Słownik przechowuje klucz: parę wartości w Pyton .
Aby iterować po wartościach w słowniku, możesz użyć wbudowanych metod, takich jak wartości(), items() lub nawet bezpośrednio iterować po słowniku, aby uzyskać dostęp do wartości za pomocą kluczy.
Słowniki Pythona
Słowniki w Pythonie są bardzo przydatnymi strukturami danych. Słowniki przechowują elementy w parach klucz-wartość.
Klucze słownikowe są typu hashable, co oznacza, że ich wartości nie zmieniają się przez cały okres istnienia. W słowniku nie może być duplikatów kluczy.
Aby uzyskać dostęp do wartości przechowywanej w a Słownik Pythona musisz użyć kluczy.
Jak iterować po słowniku w Pythonie
Iteracja po słowniku oznacza odwiedzanie po kolei każdej pary klucz-wartość. Oznacza to dostęp do słownika Pythona i przeglądanie każdej wartości klucz-wartość występującej w słowniku. Iterowanie słownika jest bardzo ważnym zadaniem, jeśli chcesz prawidłowo używać słownika.
Istnieje wiele sposobów iteracji słownika. Omówimy kilka ogólnie używanych metod iteracji słownika w Pythonie, które są następujące:
- Iteruj słownik Pythona za pomocą build.keys()
- Iteruj po wszystkich wartościach za pomocą .values()
- Pętla w słowniku Pythona przy użyciu pętli for
- Iteruj parę klucz-wartość za pomocą items()
- Klucz dostępu Korzystanie z map() i dict.get
- Klucz dostępu w Pythonie przy użyciu zip()
- Klucz dostępu przy użyciu rozpakowywania Dict
Notatka: W Pythonie w wersji 3.6 i wcześniejszych słowniki nie były uporządkowane. Ale od wersji Pythona 3.7 i nowszych słowniki są uporządkowane.
Iterowanie słownika w Pythonie przy użyciu metody .values().
Aby iterować po wszystkich wartościach słownika w Pythonie, użyj .wartości() , możesz zastosować pętlę for, uzyskując dostęp do każdej wartości sekwencyjnie. Ta metoda umożliwia przetwarzanie lub wyświetlanie poszczególnych wartości w słowniku bez jawnego odwoływania się do odpowiednich kluczy.
Przykład: W tym przykładzie używamy metody wartości() do wydrukowania wszystkich wartości znajdujących się w słowniku.
Python3
# create a python dictionary> statesAndCapitals>=> {> >'Gujarat'>:>'Gandhinagar'>,> >'Maharashtra'>:>'Mumbai'>,> >'Rajasthan'>:>'Jaipur'>,> >'Bihar'>:>'Patna'> }> print>(>'List Of given capitals:
'>)> for> capital>in> statesAndCapitals.values():> >print>(capital)> |
>
>
Wyjście:
List Of given capitals: Gandhinagar Mumbai Jaipur Patna>
Dostęp do kluczy słownikowych w Pythonie przy użyciu kompilacji .keys()
W Pythonie dostęp do kluczy słownika można uzyskać za pomocą wbudowanego ` .Klucze() ` metoda. Zwraca obiekt widoku, który wyświetla listę wszystkich kluczy w słowniku. Widoku tego można używać bezpośrednio lub przekształcić w listę w celu dalszej manipulacji.
Przykład : W tym przykładzie poniższy kod pobiera wszystkie klucze ze słownika `statesAndCapitals` za pomocą `.keys()` i drukuje wynikowy obiekt widoku.
Python3
wyszukiwanie binarne w Javie
statesAndCapitals>=> {> >'Gujarat'>:>'Gandhinagar'>,> >'Maharashtra'>:>'Mumbai'>,> >'Rajasthan'>:>'Jaipur'>,> >'Bihar'>:>'Patna'> }> keys>=> statesAndCapitals.keys()> print>(keys)> |
>
>
Wyjście:
dict_keys(['Gujarat', 'Maharashtra', 'Rajasthan', 'Bihar'])>
Pętla w słowniku Pythona przy użyciu pętli for
Aby uzyskać dostęp do kluczy w słowniku bez użycia metody `keys()`, możesz bezpośrednio iterować po słowniku za pomocą dla pętli , na przykład `dla klucza w moim_dyktacie:`. Ta pętla automatycznie iteruje po kluczach, umożliwiając bezpośredni dostęp do każdego klawisza bez konieczności jawnego wywoływania metody.
Przykład: W tym przykładzie iterujemy po słownikach, używając pętli „for” do iteracji naszych kluczy i wypisywania wszystkich kluczy znajdujących się w Słowniku.
Python3
statesAndCapitals>=> {> >'Gujarat'>:>'Gandhinagar'>,> >'Maharashtra'>:>'Mumbai'>,> >'Rajasthan'>:>'Jaipur'>,> >'Bihar'>:>'Patna'> }> print>(>'List Of given states:
'>)> # Iterating over keys> for> state>in> statesAndCapitals:> >print>(state)> |
algorytm dla rsa
>
>
Wyjście:
List Of given states: Gujarat Maharashtra Rajasthan Bihar>
Iteruj po słowniku, używając metody items().
Możesz użyć wbudowanej metody items(), aby uzyskać dostęp zarówno do kluczy, jak i elementów w tym samym czasie. Metoda items() zwraca obiekt widoku zawierający parę klucz-wartość w postaci krotek.
Python3
statesAndCapitals>=> {> >'Gujarat'>:>'Gandhinagar'>,> >'Maharashtra'>:>'Mumbai'>,> >'Rajasthan'>:>'Jaipur'>,> >'Bihar'>:>'Patna'> }> for> key, value>in> statesAndCapitals.items():> >print>(f>'{key}: {value}'>)> |
>
>
Wyjście:
Gujarat: Gandhinagar Maharashtra: Mumbai Rajasthan: Jaipur Bihar: Patna>
Iterowanie słownika Pythona przy użyciu map() i dict.get
Metoda uzyskuje dostęp do kluczy w słowniku za pomocą `mapa()` I `dykt.get() `. Stosuje funkcję `dict.get` do każdego klawisza, zwracając obiekt mapy o odpowiednich wartościach. Umożliwia to bezpośrednią iterację po kluczach słownika, skutecznie uzyskując ich wartości w zwięzły sposób.
Przykład: W tym przykładzie poniższy kod wykorzystuje funkcję `map()` do utworzenia iterowalnej wartości uzyskanych poprzez zastosowanie metody `get` do każdego klucza w słowniku `statesAndCapitals`. Następnie wykonuje iterację za pomocą pętli „for” i wypisuje każdy klawisz.
Python3
instancja Java
statesAndCapitals>=> {> >'Gujarat'>:>'Gandhinagar'>,> >'Maharashtra'>:>'Mumbai'>,> >'Rajasthan'>:>'Jaipur'>,> >'Bihar'>:>'Patna'> }> map_keys>=> map>(statesAndCapitals.get, statesAndCapitals)> for> key>in> map_keys:> >print>(key)> |
>
>
Wyjście :
Gandhinagar Mumbai Jaipur Patna>
Wykonaj iterację słownika Pythona za pomocą funkcji zip().
Za pomocą `zip()` w Pythonie dostęp do kluczy słownika można uzyskać, iterując jednocześnie po krotce kluczy i wartości słownika. Ta metoda tworzy pary kluczy i wartości, umożliwiając zwięzłą iterację po obu elementach.
Przykład: W tym przykładzie funkcja zip() łączy w parę każdy stan z odpowiadającą mu stolicą, a pętla wykonuje iterację po tych parach, aby wydrukować informacje
Python3
statesAndCapitals>=> {> >'Gujarat'>:>'Gandhinagar'>,> >'Maharashtra'>:>'Mumbai'>,> >'Rajasthan'>:>'Jaipur'>,> >'Bihar'>:>'Patna'> }> for> state, capital>in> zip>(statesAndCapitals.keys(), statesAndCapitals.values()):> >print>(f>'The capital of {state} is {capital}'>)> |
>
>
Wyjście :
The capital of Gujarat is Gandhinagar The capital of Maharashtra is Mumbai The capital of Rajasthan is Jaipur The capital of Bihar is Patna>
Iteracja słownika w Pythonie poprzez rozpakowanie słownika
Aby uzyskać dostęp do kluczy poprzez rozpakowanie słownika, możesz użyć operatora gwiazdki (*), aby rozpakować klucze na listę lub inną iterację.
Przykład : W tym przykładzie zobaczysz, że używamy * do rozpakowania słownika. Metoda *dict pomaga nam rozpakować wszystkie klucze w słowniku.
Python3
statesAndCapitals>=> {> >'Gujarat'>:>'Gandhinagar'>,> >'Maharashtra'>:>'Mumbai'>,> >'Rajasthan'>:>'Jaipur'>,> >'Bihar'>:>'Patna'> }> keys>=> [>*>statesAndCapitals]> values>=> '{Gujarat}-{Maharashtra}-{Rajasthan}-{Bihar}'>.>format>(>*>statesAndCapitals,>*>*>statesAndCapitals)> print>(keys)> print>(values)> |
>
>
Wyjście:
['Gujarat', 'Maharashtra', 'Rajasthan', 'Bihar'] Gandhinagar-Mumbai-Jaipur-Patna>
Iterowanie po słowniku jest ważnym zadaniem, jeśli chcesz uzyskać dostęp do kluczy i wartości słownika. W tym samouczku wspomnieliśmy o kilku sposobach iteracji po wszystkich elementach słownika. Ważne metody, takie jak wartości(), elementy() i klucze() są wymienione wraz z innymi technikami.
- Iteruj po liście słowników w Pythonie
- Iteruj po słowniku list wartości
- Jak iterować po zagnieżdżonym słowniku
- Usuń elementy ze słownika podczas iteracji