In [ ]:
from functools import reduce
product = reduce((lambda x, y: (x, y)), [1, 2, 3, 4])
product

In [ ]:


In [ ]:
#want to apply a list of functions to a hash

def funcA(row):
    row['col1']=4
    return(row)

In [ ]:
def funcB(row):
    row['col2']= row['col1']+10
    return(row)

In [ ]:
def funcC(row):
    row['col3']= row['col1']+10
    return(row)

In [ ]:
range(10)

In [ ]:
funcA({'idx':1})

In [ ]:
[funcA(r) for r in [{'index':i} for i in range(10)]]

In [ ]:
flist = [funcA, funcB, funcC]

In [ ]:
reduce((lambda x, y: (x, y)), flist)

In [ ]:
[{k:v} for k,v in [('index',i) for i in range(10)]]

In [ ]:
def bugger(fl,h=None):
    if(h == None):
        h = {}
    for f in fl:
        h = f(h)
    return(h)

In [ ]:
bugger([funcA],{'foo':3})

In [ ]:
[{k:v} for k,v in [('index',i) for i in range(10)]]

In [ ]:
[bugger(flist, h) for h in  [{k:v} for k,v in [('index',i) for i in range(10)]] ]

In [ ]:
data={}
for f in flist:
    data = f(data)
data

In [ ]:
dict([('foo',3),('var',4)])

In [ ]:
data={}
r = data
[r = f(r) for f in flist]

In [ ]:
data

In [ ]: