On 25/05/2012 02:23, SherjilOzair wrote:
def adder():
s = 0
def a(x):
s += x
return sum
return a
pos, neg = adder(), adder()
for i in range(10):
print pos(i), neg(-2*i)
This should work, right? Why does it not?
Checkout slide no. 37 of a Tour of Go to know inspiration. Just wanted
to see if python was the same as Go in this regard. Sorry, if I'm being
rude, or anything.
If you bind to a name (assign to a variable) in a function, that name
is by default local to the function unless it's declared as "global"
(which means "in this module's namespace") or "nonlocal" (which means
"in the enclosing function's namespace") (Python 3 only).
--
http://mail.python.org/mailman/listinfo/python-list