On 11/12/2010 3:08 PM, Hatem Nassrat wrote: > A colleague of mine came across something anecdotal when working with > lambdas, it is expressed by the following code snippet. > > In [1]: def a(): > ...: for i in range(10): > ...: def b(): > ...: return i > ...: yield b > ...: > ...: > > In [2]: funcs = list(a()) > > In [3]: print [f() for f in funcs] > [9, 9, 9, 9, 9, 9, 9, 9, 9, 9] > > > I understand that for loops in python do not have a scope, neither do > if statements, and python is awesome for that. Is this something > accidental? i.e. will python ever evolve into having scopes for if and > for loops (and other blocks that are not functions)? the reason I ask > is with the introduction of > http://docs.python.org/py3k/reference/simple_stmts.html#nonlocal it > seems like something that can happen. Question/discussion issues like this belong on python-list or python-ideas list. -- Terry Jan Reedy
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4