#17 Lambda-funk / Python Lessons for Beginners

Previous lesson: Functions in Python A lambda function is a small, anonymous function. It can take any number of arguments, but at the same time have only one expression.

Syntax

lambda arguments : expression After executing the expression – the result is returned. Lambda functions can take any number of arguments. lambda multiplies the argument a by the argument b and outputs the result:

x = lambda a, b: a * b
print(x(5, 6))

Output:

30

And this function sums the arguments a, b, and c and outputs the result:

x = lambda a, b, c: a + b + c
print(x(5, 6, 2))

Output:

13

Why use lambda functions?

The power of a lambda is better seen when you use it as an anonymous function within another function. Say you have a function definition that takes one argument, and that argument will be multiplied by an unknown number:

def myfunc(n):
return lambda a: a * n

Use this function definition to create a function that always doubles the number you send:

def myfunc(n):
return lambda a: a * n
mydoubler = myfunc(2)
print(mydoubler(11))

Output:

22

Or use the same function definition to make a function that always triples a number:

def myfunc(n):
return lambda a: a * n
mytripler = myfunc(3)
print(mytripler(11))

Conclusion:

33

Or, use the same definition to make both functions in the same program:

def myfunc(n):
return lambda a: a * n
mydoubler = myfunc(2)
mytripler = myfunc(3)
print(mydoubler(11))
print(mytripler(11))

Output:

22
33

Use the lambda function when an anonymous function is needed in a certain part of the code, but not throughout the script.