That would bring back my previous notion of fwhile.

fwhile X in ListY and conditionZ:

It was pointed out that the 'and' is ambiguous (though perhaps not fatally problematic)
and adding a new keyword is really bad as well.

I guess:

for X in ListY and conditionZ:  would just have the ambiguity.

[Or maybe not, as long as the condition is a bool, it's not iterable and thus not confused with list.]



-----Original Message-----
From: Wolfgang Maier <wolfgang.maier@biologie.uni-freiburg.de>
To: python-ideas <python-ideas@python.org>
Sent: Tue, Jun 25, 2013 4:51 pm
Subject: Re: [Python-ideas] Is this PEP-able? for X in ListY while conditionZ:

Hi,
I suggested the very same 'while in a comprehension/generator expression'
back in January:
http://mail.python.org/pipermail/python-ideas/2013-January/018969.html

There were many very useful responses suggesting alternative syntax (that
I'm using now).
The proposal itself was dismissed with the logic that comprehensions can
currently be translated directly into explicit for loops, e.g.:

[x for x in items if x!=0]

equals:

result=[]
for x in items:
    if x!=0:
        result.append(x)

This equivalence is considered *very* important and the while statement
would break it:

[x for x in items while x>0]

does *not* translate into:

for x in item:
    while x>0:
        result.append(x)

So, as long as you can't come up with syntax that translates properly,
there's no chance of getting it accepted.

Best,
Wolfgang


_______________________________________________
Python-ideas mailing list
Python-ideas@python.org
http://mail.python.org/mailman/listinfo/python-ideas