PEP 308: I liked the original proposal better
Dave Brueck
dave at pythonapocrypha.com
Mon Feb 24 11:46:06 EST 2003
On Mon, 24 Feb 2003, Delaney, Timothy C (Timothy) wrote:
> > From: Greg Ewing (using news.cis.dfn.de) [mailto:me at privacy.net]
> >
> > As far as I can see, no one proposal appears to have
> > anywhere near a majority supporting it, and the minority
> > which supports x if C else y doesn't seem to be
> > significantly smaller than the minority supporting
> > any other single proposal.
> >
> > I just feel that it has been dismissed too soon.
>
> Nah - they've all been dismissed too late.
>
> The One True Pythonic Ternary Operator is
>
> class bool:
>
> def ifelse (self, trueresult, falseresult, callable=False):
> if self:
> if callable:
> return trueresult()
> else:
> return trueresult
> else:
> if callable:
> return falseresult()
> else:
> return falseresult
>
> Short-circuiting and everything else required in one.
>
> this-was-going-to-be-a-wink-but-I-like-this-idea-ly yours
Better put the wink back in. :) Unfortunately, it doesn't provide short
circuiting for any of the times when short-circuiting is actually
important - it's unlikely that a parameterless function call would be that
useful, not to mention the more common uses like preventing invalid
attribute access, preventing divide by zero, etc. :(
-Dave
More information about the Python-list
mailing list