Jak sortować z Lambda w Python

Jak sortować z Lambda w Python
Operacja sortowania jest stosowana do listy danych w dowolnym języku programowania. Tuple, lista i słownik są używane w Python do przechowywania wielu danych. Wartości krotki i listy są dostępne według indeksu numerycznego, a klucze uzyskują dostęp do wartości słownika. W Pythonie istnieje wiele wbudowanych funkcji, aby sortować listę danych w kolejności rosnącej lub malejącej. Funkcja Lambda jest jedną z nich. Koder może zdefiniować kolejność sortowania na podstawie wymagań za pomocą tej funkcji. W tym samouczku wyjaśniono zastosowania funkcji Lambda do sortowania listy i obiektów słownikowych na różne sposoby.

Przykład-1: Sortuj listę liczbowych danych ciągów

Utwórz plik Python z następującym skryptem, aby sortować listę danych stringów za pomocą Lambda, która zawiera wszystkie wartości liczbowe. W skrypcie zdefiniowano listę 6 elementów. Tutaj, lambda użył wewnątrz posortowane () funkcja, aby sortować listę. Zmienna listy została podana jako pierwsza wartość argumentu, lambda została ustawiona jako wartość kluczowa, a pozycja początkowa tego rodzaju została ustawiona w trzecim argumencie. Następnie funkcja print () używana jest do drukowania posortowanej listy z miejscem.

# Deklaruj listę ciągu z wartościami liczbowymi
n_list = [„11”, „50”, „5”, „1”, „37”, „19”]
# Sortuj listę za pomocą Funkcji Lambda i Sorted
sorted_list = sorted (n_list, key = lambda x: int (x [0:]))
# Wydrukuj posortowaną listę
Drukuj („Lista posortowanych wartości to:”)
Dla wartości w sorted_list:
druk (wartość, end = ")

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu.

Przykład-2: Sortuj listę krotek

Utwórz plik Pythona z następującym skryptem, aby sortować listę trzech krotek za pomocą Lambda, gdzie każdy krotek zawiera trzy elementy. W skrypcie pokazano trzy rodzaje sortowania. Pozycja sortowania jest ustawiona na 0 w pierwszej sortowanej funkcji. To sortuje listę na podstawie pierwszego elementu każdego krotki. Pozycja sortowania jest ustawiona na 1 w drugiej sortowanej funkcji. To sortuje listę na podstawie drugiego elementu każdego krotki. Pozycja sortowania jest ustawiona na 2 w trzeciej sortowanej funkcji. To sortuje listę na podstawie trzeciego elementu każdego krotki.

# Deklaruj listę krotek
tuple_list = [(„html”, 15, „m01”), („javascript”, 10, „m03”), („bootstrap”, 5, „m02 ')]
# Sortuj listę na podstawie pierwszego elementu krotki
sorted_list1 = sortowany (tuple_list, key = lambda x: x [0])
# Wydrukuj pierwszą posortowaną listę
Drukuj („posortowana lista na podstawie pierwszego elementu: \ n”, sorted_list1)
# Sortuj listę na podstawie drugiego elementu krotki
sorted_list2 = sortowany (tuple_list, key = lambda x: x [1])
# Wydrukuj drugą listę posortowaną
Drukuj („posortowana lista na podstawie drugiego elementu: \ n”, sorted_list2)
# Sortuj listę na podstawie trzeciego elementu krotki
sorted_list3 = sortowany (tuple_list, key = lambda x: x [2])
# Wydrukuj trzecią listę posortowanej
Drukuj („posortowana lista na podstawie trzeciego elementu: \ n”, sorted_list3)

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu. Trzy posortowane listy krotek pokazano na wyjściu na podstawie posortowanej pozycji.

Przykład-3: Sortuj listę zawierającą inną listę

Utwórz plik Pythona z następującym skryptem, aby sortować zagnieżdżoną listę za pomocą Lambda. Pusta lista została zadeklarowana do przechowywania wartości posortowanej listy. Tutaj zagnieżdżone pętle „for” użyły do ​​sortowania elementów zagnieżdżonej listy. Zewnętrzna pętla „for” będzie się iterować na podstawie liczby list wewnętrznych zdefiniowanych na liście głównej. Według skryptu trzy listy wewnętrzne zdefiniowane na liście głównej, w której pierwsza lista wewnętrzna ma trzy elementy, druga lista wewnętrzna ma dwa elementy, a trzecia lista wewnętrzna ma cztery elementy. Wewnętrzna pętla „for” będzie się iterować na podstawie pozycji każdej listy wewnętrznej. Funkcja sortowanego () wywołała z lambda wewnątrz wewnętrznej pętli, aby sortować zagnieżdżoną listę.

# Deklaruj zagnieżdżoną listę
NESTEST_LIST = [[„MANGO”, „Banana”, „Orange”], [„Rose”, „Lily”], [„Lion”, „Monkey”, „Tiger”, „Deer”]]]]
# Deklaruj pustą listę
sorted_data = []
# Pętla, aby iterować zewnętrzną listę
Dla I w zakresie (Len (Nested_List)):
# Pętla, aby iterować listę wewnętrzną
dla J w zakresie (Len (Nested_List [i])):
# Sortuj listę wewnętrzną
sorted_list = sorted (Nested_List [i], key = lambda x: x [0])
# Dołącz posortowaną listę
sorted_data.append (sorted_list)
# Wydrukuj posortowaną listę zagnieżdżonych
Drukuj („Lista po sortowaniu: \ n ”.format (sorted_data))

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu. Lista trzech posortowanych list pokazała na wyjściu.

Przykład-4: Sortuj listę słowników

Utwórz plik Pythona z następującym skryptem, aby sortować listę słowników za pomocą Lambda. Każdy słownik zawiera trzy pary wartości kluczowej w liście. W skrypcie pokazano cztery rodzaje sortowania. Pierwsze wyjście pokaże sortowanie na podstawie klucza kodu. Drugie wyjście pokaże sortowanie na podstawie klucza nazwy. Trzecie wyjście pokaże sortowanie na podstawie kodu i klawiszy nazwy. Czwarte wyjście pokaże sortowanie w kolejności malejącej na podstawie klucza nazwy.

# Deklaruj listę słownika
dic_list = [„kod”: „cse-401”, „nazwa”: „multimedia”, „kredyt”: 2.0,
„Code”: „CSE-101”, „Nazwa”: „Computer Fundamental”, „Credit”: 1.5,
„Code”: „CSE-305”, „Nazwa”: „UNIX Programming”, „Credit”: 3.0]
# Wydrukuj sortowany słownik na podstawie kodu
print („sortowanie na podstawie kodu: \ n”, sortowane (dic_list, key = lambda i: i ['code'])))
# Wydrukuj sortowany słownik na podstawie nazwy
print („sortowanie na podstawie nazwy: \ n”, sortowane (dic_list, key = lambda i: (i ['name'])))))))
# Wydrukuj sortowany słownik na podstawie kodu i nazwy
print („Sortowanie na podstawie kodu i nazwy: \ n”, posortowane (DIC_LIST, KEY = Lambda I: (I ['Code'], i ['name'])))))))))))))))))
# Wydrukuj sortowany słownik w zejściu na podstawie nazwy
Drukuj („Sortowanie w kolejności malejącej na podstawie nazwy: \ n”, posortowany (dic_list, key = lambda i: i ['nazwa'], reverse = true)))

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu.

Wniosek:

Zastosowania Lambda do sortowania czterech różnych list pokazano w tym samouczku za pomocą prostych przykładów, które pomogą użytkownikom Python zrozumieć cel używania Lambda w sortowaniu.