Junior
Kas ir lambda izteiksme Python?
sobes.tech AI
Atbilde no AI
Python valodā lambda izteiksme ir anonīfa funkcija, kas definēta, izmantojot atslēgvārdu lambda. Tās sintakse ir vienkārša: lambda arguments: expression.
Galvenās īpašības:
- Anonimitāte: Tam nav nosaukuma.
- Vienkāršība: Tam jābūt vienā rindā.
- Vienkārša izteiksme: Tam var būt tikai viena izteiksme, kuras rezultāts tiek atgriezts.
- Var pieņemt jebkādu argumentu skaitu: Bet tikai vienu izteiksmi.
Piemēri:
# Vienkārša lambda funkcija, kas dubulto skaitli
double = lambda x: x * 2
# Lietošana:
# print(double(5)) # Izvadīs 10
# Lambda funkcija ar vairākiem argumentiem
add = lambda a, b: a + b
# Lietošana:
# print(add(3, 7)) # Izvadīs 10
# Lambda ar funkcijām ar augstāku ordeni
# Piemēram, filter()
numbers = [1, 2, 3, 4, 5, 6]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
# print(even_numbers) # Izvadīs [2, 4, 6]
# Lambda ar map()
squared_numbers = list(map(lambda x: x**2, numbers))
# print(squared_numbers) # Izvadīs [1, 4, 9, 16, 25, 36]
# Lambda kā arguments key parametrā sorted()
dati = [{'name': 'Alice', 'age': 30}, {'name': 'Bob', 'age': 25}]
sorted_data_by_age = sorted(dati, key=lambda item: item['age'])
# print(sorted_data_by_age) # Izvadīs sakārtotu sarakstu pēc vecuma
Lambda izteiksmes ir noderīgas nelielām, vienreizējām funkcijām, ko bieži izmanto kopā ar augstāka līmeņa funkcijām (map, filter, sorted). Tomēr sarežģītākiem uzdevumiem vai funkcijām, kurām nepieciešama dokumentācija (docstrings), ieteicams izmantot parastās funkcijas, kas definētas ar def.