Pages

Saturday, January 1, 2011

Lambda Forms

A lambda statement is used to create new function objects and then return them at runtime.
Using Lambda Forms

Example 15.2. Using Lambda Forms
#!/usr/bin/python
# Filename: lambda.py
def make_repeater(n):
return lambda s: s * n
twice = make_repeater(2)
print twice('word')
print twice(5)

Output
$ python lambda.py
wordword
10

How It Works
Here, we use a function make_repeater to create new function objects at runtime and return it. A
lambda statement is used to create the function object. Essentially, the lambda takes a parameter followed
by a single expression only which becomes the body of the function and the value of this expression
is returned by the new function. Note that even a print statement cannot be used inside a lambda
form, only expressions.

No comments:

Post a Comment