## Python Function

Pyhon funcrtion has 4 types that is Lambda, filter, map, reduce function.

## Lambda

- A lambda function is a small anonymous function.

- A lambda function can take any number of arguments, but can only have one expression.

#### Syntax

**Lambda arguments: expression**

The expression is executed and the result is returned:

Let’s look at this example and try to understand.

`#Square of given no f=lambda x : x*x print(f(7)) #Largest of two no f=lambda x,y: x if (x>y) else y print("Largest no",f(5,7)) #Calculate the sum of two no f=lambda a,b: a+b print("add:",f(2,3)) #calculate the multiplication f=lambda a,b: a*b a=int(input("Enter value:")) b=int(input("Enter value:")) print("Mul:",f(a,b)`

Output.

```
>>>
========== RESTART: C:/Users/User/Desktop/python/practise/lambda.py ==========
49
Largest no 7
add: 5
Enter value:2
Enter value:3
Mul: 6
>>>
```

### Lambda using Filter

filter function expects two arguments, function object and an iterable. function object returns a boolean value. function object is called for each element of the iterable and filter returns only those element for which the function object returns *true*. filter function also returns a list of element .

## Filter

- Filter=Take only true value and Store.
- The filter
( ) function in Python takes in a function and a list as arguments. This offers an elegant way to filter out all the elements of a sequence “sequence”, for which the function returns True.

```
li = [5, 7, 22, 97, 54, 62, 77, 23, 73, 61]
odd_list = list(filter(lambda x: (x%2 != 0) , li))
print(odd_list)
even_list = list(filter(lambda x: (x%2 == 0) , li))
print(even_list)
```

Output:

[5, 7, 97, 77, 23, 73, 61] [22, 54, 62]

## Map Function

- Map maps element of the list to another value as per expression in the lambda

```
square_list = list(map(lambda x: x*x,li))
print(square_list)
cube_list = list(map(lambda x:x*x*x,li))
print(cube_list)
```

Output:

[25, 49, 484, 9409, 2916, 3844, 5929, 529, 5329, 3721] [125, 343, 10648, 912673, 157464, 238328, 456533, 12167, 389017, 226981]

## Reduce Function

- Reduces a list to result

```
li = [5, 8, 10, 20, 50, 100]
sum = reduce((lambda x, y: x + y), li)
print(sum) mult = reduce((lambda x,y:x*y),li)
print(mult)
```

Output :

193

40000000

Hello there, You have done a fantastic job. I’ll certainly digg it and for my part recommend to my friends. I’m sure they’ll be benefited from this site.|