from functools import partial

def f(x, z):
    print('x=', x, ', z=', z)
lst = [partial(f, z=i) for i in range(5)]
for fn in lst:
    fn(3)
Evaluating a list of python lambda functions only evaluates the last list element