w Pythonie funkcja anonimowa oznacza, że funkcja jest bez nazwy. Jak już wiemy, słowo kluczowe def jest używane do definiowania normalnej funkcji w Pythonie. Podobnie, słowo kluczowe lambda jest używane do definiowania funkcji anonimowej w Pythonie. Ma następującą składnię:
Syntax: lambda arguments: expression
- ta funkcja może mieć dowolną liczbę argumentów, ale tylko jedno wyrażenie, które jest obliczane i zwracane.
- można używać funkcji lambda wszędzie tam, gdzie wymagane są obiekty funkcyjne.,
- musisz mieć świadomość, że funkcje lambda są ograniczone składniowo do jednego wyrażenia.
- oprócz innych typów wyrażeń w funkcjach ma on różne zastosowania w poszczególnych dziedzinach programowania.
spójrzmy na ten przykład i spróbujmy zrozumieć różnicę między normalną funkcją Def a funkcją lambda.,d=”28e0a61f79″>
(cube(
5
))
print
(lambda_cube(
5
))
Output:
125125
As we can see in the above example both the cube() function and lambda_cube() function behave the same and as intended., Przeanalizujmy powyższy przykład nieco bardziej:
- bez użycia Lambda: tutaj oba zwracają sześcian danej liczby. Ale podczas używania def, musieliśmy zdefiniować funkcję o nazwie cube i musieliśmy przekazać jej wartość. Po wykonaniu, musieliśmy również zwrócić wynik, z którego funkcja została wywołana za pomocą słowa kluczowego return.
- użycie Lambda: definicja Lambda nie zawiera instrukcji „return”, zawsze zawiera zwracane wyrażenie., Możemy również umieścić definicję lambda wszędzie tam, gdzie oczekiwana jest funkcja, i nie musimy jej w ogóle przypisywać do zmiennej. To jest prostota funkcji lambda.
funkcje Lambda mogą być używane wraz z wbudowanymi funkcjami, takimi jak filter (), map () i reduce ().
Używanie funkcji lambda() z filter ()
funkcja filter() w Pythonie przyjmuje funkcję i listę jako argumenty. Oferuje to elegancki sposób na odfiltrowanie wszystkich elementów sekwencji „Sekwencja”, dla której funkcja zwraca True.,/div>filter
(
lambda
age: age>
18
, ages))
print
(adults)
Output:
Using lambda() Function with map()
The map() function in Python takes in a function and a list as an argument., Funkcja jest wywoływana z funkcją lambda i zwracana jest lista oraz nowa lista, która zawiera wszystkie elementy zmodyfikowane przez lambda zwrócone przez tę funkcję dla każdego elementu.,9e8e9″>
x: x
*
2
, li))
print
(final_list)
Output:
Example 2:
Output:
Using lambda() Function with reduce()
The reduce() function in Python takes in a function and a list as an argument., Funkcja jest wywoływana z funkcją lambda i iterable i zwracany jest nowy wynik zredukowany. Wykonuje to powtarzalną operację nad parami iterowalnych. Funkcja reduce () należy do modułu functools.,v> reduce
((
lambda
x, y: x
+
y), li)
print
(
sum
)
Output:
193
Example 2:
Output:
The maximum element of the list is : 6
This article is contributed by Chinmoy Lenka., Jeśli lubisz GeeksforGeeks i chciałbyś przyczynić się do tego, możesz również napisać artykuł za pomocą contribute.geeksforgeeks.org lub wyślij artykuł do [email protected]. Zobacz swój artykuł pojawiający się na stronie głównej GeeksforGeeks i pomóż innym Geekom.
proszę pisać komentarze, jeśli znajdziesz coś błędnego, lub chcesz podzielić się więcej informacji na temat omawiany powyżej.
Uwaga geek! Wzmocnij swoje podstawy dzięki kursowi Python Programming Foundation i naucz się podstaw.,
na początek przygotowanie do rozmowy kwalifikacyjnej wzbogaca koncepcje struktur danych o kurs Python DS.