Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
45 views

Python

The document discusses lambda functions in Python. It explains that lambda functions are anonymous temporary functions used in combination with functions like filter(), map(), and reduce(). The syntax of a lambda function is lambda argument_list: expression. Lambda functions allow creating small anonymous functions on the fly. Examples are provided showing how to use lambda functions with map() to transform a list, filter() to filter a list based on a condition, and reduce() to continually apply a function to a sequence and return a single value.

Uploaded by

Nukasep Pisan
Copyright
© © All Rights Reserved
Available Formats
Download as ODT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
45 views

Python

The document discusses lambda functions in Python. It explains that lambda functions are anonymous temporary functions used in combination with functions like filter(), map(), and reduce(). The syntax of a lambda function is lambda argument_list: expression. Lambda functions allow creating small anonymous functions on the fly. Examples are provided showing how to use lambda functions with map() to transform a list, filter() to filter a list based on a condition, and reduce() to continually apply a function to a sequence and return a single value.

Uploaded by

Nukasep Pisan
Copyright
© © All Rights Reserved
Available Formats
Download as ODT, PDF, TXT or read online on Scribd
You are on page 1/ 2

Lambda function

Some like it, others hate it and many are afraid of the lambda operator. We are confident that you
will like it, when you have finished with this chapter of our tutorial. If not, you can learn all about
"List Comprehensions", Guido van Rossums preferred way to do it, because he doesn't like
Lambda, map, filter and reduce either.

The lambda operator or lambda function is a way to create small anonymous functions, i.e.
functions without a name. These functions are throw-away functions, i.e. they are just needed where
they have been created. Lambda functions are mainly used in combination with the functions
filter(), map() and reduce(). The lambda feature was added to Python due to the demand from Lisp
programmers.

The general syntax of a lambda function is quite simple:


lambda argument_list: expression
The argument list consists of a comma separated list of arguments and the expression is an
arithmetic expression using these arguments. You can assign the function to a variable to give it a
name.
The following example of a lambda function returns the sum of its two arguments:

http://www.python-course.eu/lambda.php

sample :

someVar = lambda x,y,z : x*y/z


soemVar(2,6,3) ---> 4

The map() Function

The advantage of the lambda operator can be seen when it is used in combination with the map()
function.
map() is a function with two arguments:

r = map(func, seq)

The first argument func is the name of a function and the second a sequence (e.g. a list, array) seq.
map() applies the function func to all the elements of the sequence seq. It returns a new list with the
elements changed by func

example :

def celcius(S):
return (float(5)/9)*S-32
angka = (50,70,90)
map (celcius, angka)

Filtering

The function filter(function, list) offers an elegant way to filter out all the elements of a list, for
which the function function returns True.
The function filter(f,l) needs a function f as its first argument. f returns a Boolean value, i.e. either
True or False. This function will be applied to every element of the list l. Only if f returns True will
the element of the list be included in the result list.

Bilangan = (1,2,3,4,5,6,7,8,9)
filter(lambda x : x%2, bilangan) ---> (1, 3, 5, 7, 9)

Reducing a List

The function reduce(func, seq) continually applies the function func() to the sequence seq. It returns
a single value.

If seq = [ s1, s2, s3, ... , sn ], calling reduce(func, seq) works like this:
At first the first two elements of seq will be applied to func, i.e. func(s1,s2) The list on which
reduce() works looks now like this: [ func(s1, s2), s3, ... , sn ]
In the next step func will be applied on the previous result and the third element of the list, i.e.
func(func(s1, s2),s3)
The list looks like this now: [ func(func(s1, s2),s3), ... , sn ]
Continue like this until just one element is left and return this element as the result of reduce()
We illustrate this process in the following example:

randomBilangan = (1,3,10,-7,5,12,101,99,176,-4,-5)
reduce(lambda x,y : x if (x>y) else y, randomBilangan) ---> 176

You might also like