Lambda function
it is a function that is anonymous in nature and one-line syntex. Implicit return of expression.
syntex
python
lambda params: expressionexample
python
def multiply_by(multiplier):
return lambda x: x * multiplier
multiply_by_3 = multiply_by(3)
print(multiply_by_3(5))
# 15
multiply_by_5 = multiply_by(5)
print(multiply_by_5(5))
# 25sorting a list of dictionaries using lambda function
python
students = [
{'name': 'Mamra', 'score': 50},
{'name': 'Thundercat', 'score': 90},
{'name': 'Tom', 'score': 20}
]
# sort by score in ascending order
students.sort(key=lambda student: student['score'])
print(students)
# [{'name': 'Tom','score': 20}, {'name': 'Mamra','score': 50}, {'name': 'Thundercat','score': 90}]
# sort by score in descending order
students.sort(key=lambda student: student['score'], reverse=True)
print(students)
# [{'name': 'Thundercat','score': 90}, {'name': 'Mamra','score': 50}, {'name': 'Tom','score': 20}]filtering a list of dictionaries using lambda function
python
students = [
{'name': 'Mamra', 'score': 50},
{'name': 'Thundercat', 'score': 90},
{'name': 'Tom', 'score': 20}
]
# filter students with score greater than 50
high_score_students = list(filter(lambda student: student['score'] > 50, students))
print(high_score_students)
# [{'name': 'Thundercat','score': 90}]