Map Reduce and Filter
Map Reduce and Filter
def square(n):
return n*n
def square(n):
return n*n
def multiply(a,b):
return a*b
list1 = list( range(1, 11) )
list2 = list( range(11, 21) )
list3 = []
i = 0
while i<len(list1):
list3.append( multiply(list1[i], list2[i]) )
i = i + 1
print(list3)
def multiply(a,b):
return a*b
===================================================
===================================================
2. reduce():
* This function requires two parameters:
- function (lambda expression is also allowed)
- sequence (exact one sequence)
* This function returns single result/answer (not sequence)
* This function is in module "functools"
* Refer following program:
list1 = [41, 25, 63, 84, 20, 74, 25, 37, 23]
lar = list1[0]
i = 1
while i<len(list1):
if list1[i] > lar:
lar = list1[i]
i = i + 1
print(lar)
===============================================
3. filter():
* This function requires 2 parameters:
- function (or lambda expression)
- sequence
* While preparing a function/lambda expression for this
operation, that function must return a boolean result.
* This filter() function returns a sequence.
* This function will filter the values whose result/return
is FALSE. And it will collect the values whose result/
return is TRUE.
* Refer following program:
def check(x):
return True if x%3==0 else False
list1 = [15, 20 ,35, 71, 52, 39, 12, 99]
list2 = list( filter(check, list1) )
print(list2)
list2 = []
list1 = [15, 20 ,35, 71, 52, 39, 12, 99]
for val in list1:
if val%3==0:
list2.append(val)
print(list2)
def check(x):
return True if len(x)>0 else False
list1 = ["ABC", "", "PQR", "XYZ", "", "IJK"]
list2 = list( filter(check, list1) )
print(list2)
def check(x):
return True if len(x)>=3 and x[0]==x[-1] else False
list1 = ["1221", "ABC", "ABBAB", "XX", "100", "IJKI"]
list2 = list( filter(check, list1) )
print(list2)
=====================================================
import random
options = [0, 1, 1, 1, 2, 2, 2, 3, 4, 5, 6, "WIDE", "NO BALL", "OUT", "OUT", "OUT",
"OUT", "OUT"]
player = 1
while True:
print("Player", player, "press ENTER to play the BALL", end="")
input()
score = random.choice(options)
print(score)
if score=="OUT":
player = 2
================================================