Funkcje lambda w Pythonie to krótkie, anonimowe funkcje zapisywane w jednej linii. Są one często wykorzystywane do wykonywania prostych operacji, filtracji danych, a także przy mapowaniu i redukcji kolekcji. Cechą charakterystyczną funkcji lambda jest ich anonimowość, co oznacza, że nie muszą być one przypisywane do zmiennej w momencie definiowania. Zastosowanie funkcji lambda sprawdza się w wielu przypadkach, szczególnie kiedy potrzebujemy krótkiej funkcji do użycia raz, bez konieczności definiowania standardowej funkcji za pomocą słowa kluczowego def
.
Przykład zastosowania funkcji lambda
Poniżej znajduje się przykład kodu, który ilustruje użycie funkcji lambda w Pythonie. W tym przykładzie zastosujemy funkcję lambda do posortowania listy słowników według wieku osoby.
# Definiujemy listę słowników, gdzie każdy słownik zawiera
# imię oraz wiek osoby
people = [
{"name": "Anna", "age": 24},
{"name": "Bartek", "age": 30},
{"name": "Czesław", "age": 22},
{"name": "Dorota", "age": 27}
]
# Używamy funkcji lambda jako klucza sortowania
# Lista zostanie posortowana według wieku osoby
sorted_people = sorted(people, key=lambda person: person["age"])
# Wyświetlamy posortowaną listę
for person in sorted_people:
print(person["name"], "ma", person["age"], "lat")
W tym przykładzie, funkcja lambda lambda person: person["age"]
jest używana jako klucz do sortowania listy słowników people
. Dzięki temu każdy element listy jest przekazywany jako argument person
do funkcji lambda, która zwraca wiek osoby. W rezultacie lista jest sortowana według wieku osób w kolejności rosnącej.
Podsumowanie
Funkcje lambda w Pythonie to potężne narzędzie umożliwiające tworzenie anonimowych, krótkich funkcji. Są one szczególnie przydatne, kiedy potrzebujemy szybkiej funkcji do wykonania operacji na danych bez definiowania tradycyjnej funkcji. Ich elastyczność i zwięzłość sprawiają, że są chętnie wykorzystywane w wielu sytuacjach programistycznych, począwszy od sortowania, przez filtrację, aż po transformację danych.
Jeżeli chcesz przyśpieszyć swoją naukę tworzenia stron chciałbym polecić mój kurs Python od podstaw w którym nauczysz się tego języka od podstaw do zaawansowanych jego aspektów.