[Python-ideas] PEP 505 (None coalescing operators) thoughts

John Wong gokoproject at gmail.com
Wed Sep 30 19:27:15 CEST 2015

On Wed, Sep 30, 2015 at 12:49 PM, Eric V. Smith <eric at trueblade.com> wrote:

> >
> >     self.x = x if x is not None else []
> >     self.x = x otherwise []
> I'm -1 on needing syntax for this, but if we're going to do it, this is
> my favorite version I've seen so far. The usual caveats about adding a
> keyword apply.
Also feel this is the most intuitive... every other syntax seems really
hard to read, however, the caveat I am thinking here is synonym of else and
otherwise. We really should go any more complex. Those ? and null
with/without exception seems awfully complex to reason. I'd spell out 10
lines if I had to.

If fact, is it bad if we make else working for such brevity?

BTW, this syntax just defeats the example in the PEP:

[PEP 0505 - https://www.python.org/dev/peps/pep-0505/]

This particular formulation has the undesirable effect of putting the
> operands in an unintuitive order: the brain thinks, "use data if possible
> and use [] as a fallback," but the code puts the fallback * before * the
> preferred value.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20150930/b71a728a/attachment.html>

More information about the Python-ideas mailing list