[Python-ideas] With clauses for generator expressions
Greg Ewing
greg.ewing at canterbury.ac.nz
Thu Nov 15 22:42:12 CET 2012
Phil Connell wrote:
> To me, 1 feels like it captures the semantics the best - the "with" clause is
> tacked onto the generator expression "(foo(line) ... for ... if)" and applies
> to the whole of that expression.
But that would break the existing rule that binding clauses
in a comprehension have to precede the expressions that use
the bound variable. If you're allowed to write
(foo(line) for line in baz(f) with open('foo') as f)
then it's not obvious why you can't write
(foo(line) if 'bar' in line for line in lines)
Are you suggesting that the latter should be allowed as
well?
--
Greg
More information about the Python-ideas
mailing list