Jak sortować słownik w Pythonie

Jak sortować słownik w Pythonie
Wiele danych jest przechowywanych w Pythonie za pomocą krotki, listy i słownika. Gdy dane są przechowywane w Pythonie przez parę wartości kluczowej, która działa jak asocjacyjny szereg innego języka programowania, nazywa się słownikiem. Wartość słownika jest zmienna. Słownik można przechowywać na podstawie wartości klucza lub wartości lub zarówno klucza, jak i wartości. Słownik można sortować za pomocą prostej pętli, wbudowanych funkcji i modułu. W tym samouczku wyjaśniono różne sposoby sortowania danych słownika.

Przykład-1: Używanie pętli do sortowania słownika

Utwórz plik Pythona z następującym skryptem, aby sortować słownik za pomocą zagnieżdżonych do pętli. W skrypcie pokazano dwa rodzaje sortowania. Słownik czterech pozycji został tutaj ogłoszony. Imię ucznia zostało zapisane w kluczu, a uzyskany znak został zapisany w wartości. Pusty obiekt słownika został zadeklarowany przed sortowaniem w celu przechowywania danych posortowanego słownika. Po wydrukowaniu oryginalnych wartości słownika zagnieżdżone pętle „dla” użyły do ​​sortowania słownika na podstawie wartości poprzez porównanie wartości słownika. Kolejna zagnieżdżona pętla „For” używała do sortowania słownika na podstawie kluczy poprzez porównanie kluczy słownika.

# Deklaruj słownik
Marks = „Neha Ali”: 83, „Abir Hossain”: 98, „Jafar Iqbal”: 79, „Sakil Ahmed”: 65
# Wydrukuj oryginalne wartości słownika
Drukuj („Oryginalny słownik: \ n”, znaki)
# Sortuj wartości słownika
sort_values ​​= sortowane (znaki.wartości ())
sorted_marks =
# Utwórz sortowany słownik na podstawie wartości
Dla ja w sort_values:
dla K w Marks.Klucze():
Jeśli znaki [k] == i:
sorted_marks [k] = znaki [k]
przerwa
# Wydrukuj sortowany słownik
print („Sortowany słownik oparty na wartościach: \ n”, sorted_marks)
# Sortuj klucze słownika
sort_keys = sortowane (znaki.Klucze())
sorted_keys =
# Utwórz sortowany słownik na podstawie kluczy
bo ja w sort_keys:
Dla k w znakach:
Jeśli k == i:
sorted_keys [i] = znaki [k]
przerwa
# Wydrukuj sortowany słownik
Drukuj („Sortowany słownik oparty na klawiszach: \ n”, sorted_keys)

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu. Oryginalny słownik, sortowany słownik oparty na wartościach i sortowany słownik oparty na klawiszach pokazano na wyjściu.

Przykład-2: za pomocą funkcji sorted () z lambda

Używanie funkcji sorted () z Lambda to kolejny sposób na sortowanie słownika. Utwórz plik Python z następującym skryptem, aby sortować słownik za pomocą funkcji sortowanego () i lambda. W skrypcie ogłoszono słownik czterech elementów. Typ sortowania można ustawić za pomocą Lambda. Pozycja indeksu została ustawiona na 1 w trzecim argumencie funkcji sortowanej (). Oznacza to, że słownik zostanie posortowany na podstawie wartości.

# Deklaruj słownik
Marks = „Neha Ali”: 83, „Abir Hossain”: 98, „Jafar Iqbal”: 79, „Sakil Ahmed”: 65
# Wydrukuj oryginalne wartości słownika
Drukuj („Oryginalny słownik: \ n”, znaki)
# Sortuj słownik oparty na znakach za pomocą Lambda
sorted_marks = sortowane (znaki.Items (), key = lambda x: x [1])
Drukuj („Sortowany słownik oparty na znakach: \ n”, sorted_marks)

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu. Oryginalny słownik, sortowany słownik oparty na wartościach pokazany na wyjściu.

Przykład-3: Używając funkcji sorted () z elementami ()

Użycie funkcji sortowanej () z funkcją i elementów () to kolejny sposób sortowania słownika i sortuje słownik w kolejności rosnącej w oparciu o klucze domyślnie. Możesz ustawić wartość odwrotnego na true, jeśli chcesz sortować w kolejności malejącej. Utwórz plik Python z następującym skryptem, aby sortować słownik za pomocą funkcji sortowanego () i elementów (). Funkcja item () służy do pobierania kluczy lub wartości ze słownika. Funkcja sortowanego () użyto w funkcji DICT (), aby uzyskać sortowany słownik jako wyjście.

# Deklaruj słownik
Marks = „Neha Ali”: 83, „Abir Hossain”: 98, „Jafar Iqbal”: 79, „Sakil Ahmed”: 65
# Wydrukuj oryginalne wartości słownika
Drukuj („Oryginalny słownik: \ n”, znaki)
# Sortuj słownik oparty na nazwach za pomocą dict () i sorted ()
sorted_marks = dict (sortowany ((klucz, wartość) dla (klucz, wartość) w znakach.rzeczy()))
print („Sortowany słownik oparty na nazwach: \ n”, sorted_marks)

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu. Oryginalny słownik, sortowany słownik oparty na klawiszach, jak pokazano na wyjściu.

Przykład-4: za pomocą funkcji sorted () z funkcją itemgetter ()

Użycie funkcji sorted () z funkcją itemgetter () to kolejny sposób sortowania słownika. Domyślnie sortuje również słownik w kolejności rosnącej. Funkcja itemgetter () znajduje się pod modułem operatora. Utwórz plik Python z następującym skryptem, aby sortować słownik za pomocą funkcji sorted () i funkcji itemgetter (). Możesz ustawić typ sortowania za pomocą funkcji itemgetter (). Zgodnie z następującym skryptem słownik zostanie posortowany na podstawie wartości, ponieważ 1 przekazał jako wartość argumentu funkcji itemgetter ().

# Moduł importu operatora
Operator importu
# Deklaruj słownik
Marks = „Neha Ali”: 83, „Abir Hossain”: 98, „Jafar Iqbal”: 79, „Sakil Ahmed”: 65
# Wydrukuj oryginalne wartości słownika
Drukuj („Oryginalny słownik: \ n”, znaki)
# Sortuj słownik oparty na znakach za pomocą itemgetter ()
sorted_marks = sortowane (znaki.Items (), key = operator.Itemgetter (1))
# Wydrukuj sortowany słownik
Drukuj („Sortowany słownik oparty na znakach: \ n”, dict (sorted_marks)))

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu. Oryginalny słownik, sortowany słownik oparty na wartościach pokazany na wyjściu.

Wniosek:

Słownik można sortować z lub bez użycia wbudowanej funkcji Pythona. W tym samouczku wyjaśniono cztery różne sposoby sortowania słownika za pomocą różnych rodzajów funkcji. Funkcja sortowanego () jest główną funkcją do sortowania słownika. Kolejność sortowania może być również ustawiona przez tę funkcję. Inna funkcja lub indeks służy do sortowania danych na podstawie kluczy lub wartości poprzez wspomnienie argumentu lub wartości indeksu.