[New-bugs-announce] [issue26575] lambda not closed on specific value in comprehension
David Goffredo
report at bugs.python.org
Thu Mar 17 01:52:46 EDT 2016
New submission from David Goffredo:
A series of lambdas referring to a variable in a comprehension do not hold distinct values, while conventional higher order function do.
PS C:\Users\David\Desktop> python
Python 3.5.1 (v3.5.1:37a07cee5969, Dec 6 2015, 01:54:25) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> class Caller:
... def __init__(self, f):
... self._f = f
... def start(self):
... print(self._f())
...
>>> def asFunc(boundValue):
... def func():
... return boundValue
... return func
...
>>> for caller in [Caller(asFunc(x)) for x in range(5)]:
... caller.start()
...
0
1
2
3
4
>>> for caller in [Caller(lambda: x) for x in range(5)]:
... caller.start()
...
4
4
4
4
4
>>>
----------
messages: 261885
nosy: David Goffredo
priority: normal
severity: normal
status: open
title: lambda not closed on specific value in comprehension
type: behavior
versions: Python 3.5
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue26575>
_______________________________________
More information about the New-bugs-announce
mailing list