Sobes.tech
Junior

Ի՞նչ է լամբդա արտահայտությունը Python-ում։

sobes.tech AI

Պատասխան AI-ից

Python- ում lambda արտահայտությունը անանուն ֆունկցիա է, որը սահմանվում է lambda բանալի բառով: Այն ունի պարզ սինտաքս՝ lambda arguments: expression:

Հիմնական հատկանիշները՝

  • Անանուն: Չունի անուն:
  • Մի շարքում: Պետք է տեղակայված լինի մեկ տողում:
  • Մի արտահայտություն: Կարող է պարունակել միայն մեկ արտահայտություն, որի արդյունքը վերադարձվում է:
  • Կարող է ընդունել ցանկացած քանակի արգումենտներ: Բայց միայն մեկ արտահայտություն:

Օգտագործման օրինակներ՝

# Պարզ lambda ֆունկցիա թվի կրկնապատկման համար
double = lambda x: x * 2
# Օգտագործում՝
# print(double(5)) # Տպում է 10

# Lambda մի քանի արգումենտներով
add = lambda a, b: a + b
# Օգտագործում՝
# print(add(3, 7)) # Տպում է 10

# Lambda օգտագործում բարձր կարգի ֆունկցիաներով
# Օրինակ, filter()
numbers = [1, 2, 3, 4, 5, 6]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
# print(even_numbers) # Տպում է [2, 4, 6]

# Lambda օգտագործում map()-ի հետ
squared_numbers = list(map(lambda x: x**2, numbers))
# print(squared_numbers) # Տպում է [1, 4, 9, 16, 25, 36]

# Lambda օգտագործում sorted()-ի key-ով

data = [{'name': 'Alice', 'age': 30}, {'name': 'Bob', 'age': 25}]
sorted_data_by_age = sorted(data, key=lambda item: item['age'])
# print(sorted_data_by_age) # Տպում է տարիքով դասավորված ցանկը

Lambda արտահայտությունները օգտակար են փոքր, միանգամից օգտագործվող ֆունկցիաների համար, որոնք հաճախ օգտագործվում են բարձր կարգի ֆունկցիաների հետ (map, filter, sorted)։ Սակայն ավելի բարդ խնդիրների կամ ֆունկցիաների համար, որոնք պահանջում են փաստաթղթավորում (docstrings), խորհուրդ է տրվում օգտագործել սովորական def-ով սահմանված ֆունկցիաներ։