Securing a future for anonymous functions in Python
Jp Calderone
exarkun at divmod.com
Thu Dec 30 09:06:26 EST 2004
On Fri, 31 Dec 2004 00:00:31 +1000, Nick Coghlan <ncoghlan at iinet.net.au> wrote:
>Paul Rubin wrote:
> > Nick Coghlan <ncoghlan at iinet.net.au> writes:
> >
> >>Anyway, I'm looking for feedback on a def-based syntax that came up in
> >>a recent c.l.p discussion:
> >
> >
> > Looks like just an even more contorted version of lambda. It doesn't
> > fix lambda's main deficiency which is inability to have several
> > statements in the anonymous function.
>
> Do you consider generator expressions or list comprehensions deficient because
> they don't allow several statements in the body of the for loop?
>
>>> (foo + bar
... for foo in range(13) if foo % 3 == 2
... for bar in range(16, 23) if 2 <= bar % 5 < 4)
<generator object at 0xb7dec10c>
>>>
Hmm. Two for loops and two if clauses. That's four altogether.
Does that qualify as "several"? :) Sure, they're not statements
according to the grammar, but that's entirely beside the point.
Jp
More information about the Python-list
mailing list