I want to create a list of function.

Here is my code:
In [9]: a = []

In [10]: for i in range(4):
    ....:     b = lambda : i**2
    ....:     a.append(b)
    ....:
    ....:

In [11]: for f in a:
    ....:     f()
    ....:
    ....:
9
9
9
9

What I want is, the value of i should be bounded to the anonymous function. 
And the output should like this:

for f in a:
     print f()
0
1
4
9

How to achieve this?

Thanks a lot!


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

Reply via email to