New submission from artxyz: Python 2.7.11 GCC 4.8.4
Getting weird results when define a nested function in a loop and store them in a list x = list() for i in xrange(5): def FUN(): print i x.append(FUN) Calling functions from list using index works fine: for i in xrange(5): print x[i] x[i]() # prints 0 1 2 3 4 Calling function using iteration through the sequence yields wrong results, despite current function (f) changes: for f in x: print f f() # prints 4 4 4 4 4 ---------- components: Interpreter Core files: nested_fun_bug.py messages: 277155 nosy: artxyz priority: normal severity: normal status: open title: Nested fuctions Unexpected behaviour when stored in a list and called after. type: behavior versions: Python 2.7 Added file: http://bugs.python.org/file44781/nested_fun_bug.py _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue28241> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com