[Python-ideas] Add "while" clauses to generator expressions
Boris Borcic
bborcic at gmail.com
Sun Jan 11 13:05:18 CET 2009
Gerald Britton wrote:
> as well, like this:
>
> a = (i for i in range(100) while i <=50)
there was a longish thread on the subject back in august '08, where I pointed out
> you can do something like
>
>>>> def yet(b) :
> if b : raise StopIteration
>
>
>>>> list(x for x in range(0,10) if not yet(x>4))
> [0, 1, 2, 3, 4]
but I was then answered that this "worked by accident" which apparently meant
that 3.0 pedagogical doctrine wants [x for x...] to be strictly equivalent to
list(x for x...), while this equivalence in fact doesn't extend to similar uses
of StopIteration.
Cheers, BB
More information about the Python-ideas
mailing list