On Sun, Sep 20, 2015 at 2:21 AM, Guido van Rossum firstname.lastname@example.org wrote:
Should it escape from plain parentheses? Which of these is better?
(a?.b) + c === (None if a is None else a.b) + c # Fails unless c overloads None+c (a?.b) + c === None if a is None else (a.b) + c # Could be surprising if ? is deeply nested
My recommendation: It should _not_ escape. That way, you get control over how far out the Noneness goes - you can bracket it in as tight as you like.