Junior
Mis on lambda väljendus Pythonis?
sobes.tech AI
Vastus AI-lt
Lambda väljend Pythonis on anonüümne funktsioon, mis määratletakse võtmesõna lambda abil. Selle süntaks on lihtne: lambda arguments: expression.
Peamised omadused:
- Anonüümsus: Sellel pole nime.
- Ühel real: Peab olema ühel real.
- Üks väljend: Võib sisaldada ainult ühte väljendit, mille tulemus tagastatakse.
- Võib võtta mistahes arvu argumente: Kuid ainult ühe väljendiga.
Kasutusnäited:
# Lihtne lambda-funktsioon, mis kahekordistab arvu
double = lambda x: x * 2
# Kasutamine:
# print(double(5)) # Kuvab 10
# Lambda-funktsioon mitme argumendiga
add = lambda a, b: a + b
# Kasutamine:
# print(add(3, 7)) # Kuvab 10
# Lambda koos kõrgema järgu funktsioonidega
# Näiteks, filter()
numbers = [1, 2, 3, 4, 5, 6]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
# print(even_numbers) # Kuvab [2, 4, 6]
# Lambda koos map()
squared_numbers = list(map(lambda x: x**2, numbers))
# print(squared_numbers) # Kuvab [1, 4, 9, 16, 25, 36]
# Lambda argumentina sorted() funktsioonile key
andmed = [{'name': 'Alice', 'age': 30}, {'name': 'Bob', 'age': 25}]
sorted_data_by_age = sorted(andmed, key=lambda item: item['age'])
# print(sorted_data_by_age) # Kuvab vanuse järgi sorteeritud nimekirja
Lambda väljendeid kasutatakse väikeste, ühekordsete funktsioonide jaoks, mida sageli kasutatakse koos kõrgema järgu funktsioonidega (map, filter, sorted). Kuid keerukamate ülesannete või funktsioonide puhul, millele on vaja dokumentatsiooni (docstrings), on soovitatav kasutada tavalisi funktsioone, mis on defineeritud def abil.