HTML CSS PYTHON
reklama

Funkcja lambda w Pythonie

Lambda w Pythonie to anonimowa (bez nazwy), jednolinijkowa funkcja, która przyjmuje wiele parametrów i tylko jedną wartość.

składnia funkcji lambda:
lambda <parametry> : <wartość>
Jest to funkcja która nie ma nazwy. Poprzez użycie słowa kluczowego 'lambda’ informujemy Python, że właśnie taką anonimową funkcję chcemy utworzyć. Następnie podajemy listę parametrów, które chcemy aby przyjmowała, używamy znaku ':' oraz definiujemy jej zawartość.

lambda a,b : a+b

Przykład:
x=lambda a,b: a+b
print(x(5,6))
 
wynik:
11
W przykładzie powyżej funkcja przyjmuje dwa parametry a i b a następnie zwraca ich sumę.

Funkcja lambda odgrywa ważną rolę, gdy używasz ją jako funkcję anonimową wewnątrz innej funkcji.

Żeby lepiej zrozumieć zastosowanie funkcji lambda, najpierw wyjaśnijmy działanie w Pythonie funkcji wyższego rzędu.
Funkcja wyższego rzędu to zwykła funkcja, która przyjmuje jako parametr inną funkcję lub zwraca funkcję.

Przykład:
def fun(f,x):
    return x+x
 
def fun1(y):
    return y*y
 
#wywołanie funkcji wyższego rzędu
fun(fun1,2)
4    #wynik
 
#jeszcze raz wywołanie funkcji wyższego rzędu, tylko z inną wartością parametru czyli '5'
fun(fun1,5)
10

I jeszcze jeden przykład, tym razem z wykorzystaniem funkcji lambda:

Przykład:
#funkcja wyższego rzędu:
def fun(f,x):
    return f(x)
 
#zmienna y i przypisana do niej funkcja anonimowa lambda:
y=lambda z:z*z
 
#wywołanie funkcji wyższego rzędu:
fun(y,3)
9    #wynik
Oba przykłady można zapisać w prostszy sposób:

Przykład:
def fun(f,x):
    return f(x)
 
#wywołanie funkcji wyższego rzędu:
fun(lambda y:y+y,2)
4   #wynik

Wyrażenia warunkowe w funkcji lambda

Składnia funkcji lambda z zastosowaniem w wartości funkcji wyrażenia warunkowego:

lambda <parametry> : wartość IF wyrażenie prawdziwe ELSE ()
Przykład:
y=lambda x:"przyjdę dziś" if x<10 else "nie przyjdę dziś"
print(y(2))
przyjdę dziś       #wynik
print(y(12))
nie przyjdę dziś   #wynik
Samouczek Pythona
reklama
reklama
Szkoła bananik.pl jest zoptymalizowana pod kątem uczenia się, testowania i szkolenia.
Przykłady są stale sprawdzane, aby uniknąć błędów, ale nie możemy zagwarantować pełnej poprawności wszystkich treści.
Korzystając z tej witryny, wyrażasz zgodę na przeczytanie i zaakceptowanie naszych warunków użytkowania, plików cookie i polityki prywatności.
© 2024 bananik.pl
Ta strona używa ciasteczek (cookies), dzięki którym nasz serwis może działać lepiej.Rozumiem