New submission from victor <bitto...@uwp.edu>: I can't tell if this is "feature" or a "bug" but either way this behavior struck me as strange. """ def func(): x = 5 def inc(): temp = x + 1 # when inc() is execute, this line fails x = temp return x return inc
i = func() i() # will raise error """ It says that x referenced before defined (when computing x + 1). It seems that the fact that x is assigned in the local inc() that it shadows the outer x. Even stranger is that if you remove the the assignment of "x = temp" there is no error; suggesting the assignment to x anywhere in the inner function shadows the entire function. This is not the expected behavior, so I thought it may be bug. ---------- components: Interpreter Core messages: 91954 nosy: bitfort severity: normal status: open title: Scoping of variables in closures type: behavior versions: Python 2.6 _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue6782> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com