enzo michelangeli wrote:
Let's suppose I want to create a list of n functions of a single
argument, returning the sum between argument and index in the list, so
that e.g.:

f[0](10) will return 10
f[3](12) will return 15

...and so on. I had naively though of coding:

 f = [lambda x: x+j for j in range(n)]

OK, first, almost a joke (unless you really need what you say):
    f = [j.__add__ for j in range(n)]

And now the one various others are missing:

    def add(x, y):
        '''replace with the function you actually want'''
        return x + y

    f = [functools.partial(add, n) for n in range(0)]

--Scott David Daniels
scott.dani...@acm.org
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to