[Python-ideas] PEP 530: Asynchronous Comprehensions
Yury Selivanov
yselivanov.ml at gmail.com
Sat Sep 3 21:03:39 EDT 2016
Hi Matthias,
On 2016-09-03 5:55 PM, Matthias welp wrote:
> > In principle, asynchronous generator expressions are allowed in
> > any context. However, in Python 3.6, due to ``async`` and ``await``
> > soft-keyword status, asynchronous generator expressions are only
> > allowed in an ``async def`` function. Once ``async`` and ``await``
> > become reserved keywords in Python 3.7 this restriction will be
> > removed.
>
> Would this mean that with this PEP I can write a for loop like this?
>
> for (await?) item in async_generator():
> ... code
>
> Or am I misunderstanding something?
No, this is an illegal syntax and will stay that way.
The PEP allows to do this:
[await item for item in generator()]
and this:
[await item async for item in async_generator()]
The idea is to remove any kind of restrictions that we currently have on
async/await. A lot of people just assume that PEP 530 is already
implemented in 3.5.
Yury
More information about the Python-ideas
mailing list