On 2020-06-20 02:22, Robert DeLanghe wrote:
You can already do compact conditional returns with the current syntax:
def foo(a, b):
return (a != b or None) and a * b
or even:
foo = (lambda a, b: (a != b or None) and a * b)
both return:
foo(2, 5) # 10
foo(1, 1) # None
... but clarity would be better.
That can be written more clearly:
def foo(a, b):
return a * b if a != b else None
On Fri, Jun 19, 2020 at 4:20 AM Serhiy Storchaka <storch...@gmail.com
<mailto:storch...@gmail.com>> wrote:
18.06.20 15:30, Daniel. пише:
> I love the do_stuff if cond syntax in Ruby and in perl. It's very
> natural to real, much more to follow than if cond: do_stuff
>
> But still I don't think that it is enough to demand a language
change.
>
> Something near this is to have a default of none for
>
> A if B else None
>
> So we can ommit the else None part, but this goes against the
explicit
> is better than implicit
Only around 10% of "if" expressions have "else None" part. It is not
enough to justify a new syntax (even if ignore other objections).
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at
https://mail.python.org/archives/list/python-ideas@python.org/message/J7TH3N76S6C7CITCYCJWI76Y2F6DHPGF/
Code of Conduct: http://python.org/psf/codeofconduct/