
On Jan 26, 2017, at 1:45 AM, Craig Rodrigues <rodrigc@crodrigues.org> wrote:
On Wed, Jan 25, 2017 at 10:06 AM, Phil Mayers <p.mayers@imperial.ac.uk <mailto:p.mayers@imperial.ac.uk>> wrote:
Related, see:
http://stackoverflow.com/questions/32139885/yield-in-list-comprehensions-and... <http://stackoverflow.com/questions/32139885/yield-in-list-comprehensions-and...>
http://bugs.python.org/issue10544 <http://bugs.python.org/issue10544>
Basically, don't use yield inside comprehensions if you don't want weirdness, AFAICT :o/
Yes, that's the exact issue! Pointed out to me on the python-dev list:
https://mail.python.org/pipermail/python-dev/2017-January/147242.html <https://mail.python.org/pipermail/python-dev/2017-January/147242.html>
My vote is that this is a bug in Python.
Discussing on that bug, I discovered that this is sort-of fixed in python 3.6; not for generators, but for coroutines. You can have an 'async def' function that does 'await' inside a generator and it should work. Note that this is new in 3.6, and doesn't work in 3.5. -glyph