> On Behalf Of [EMAIL PROTECTED]
> F = []
> for i in xrange(N):
>     F.append(lambda x: x + i)
> 
> however, the example don't work - since i in end is N-1 it yields x+
> (N-1) for any func.

How about:

>>> def make_adder(i):
        def adder(x):
                return x+i
        return adder

>>> funcs = [make_adder(i) for i in xrange(10)]
>>> print [func(10) for func in funcs]
[10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
>>> 

Regards,
Ryan Ginstrom

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to