logo

Iteruj po słowniku w Pythonie

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.