[Python-Dev] PEP 463: Exception-catching expressions
brett at python.org
Sat Feb 22 17:30:42 CET 2014
On Fri, Feb 21, 2014 at 8:41 PM, Greg Ewing <greg.ewing at canterbury.ac.nz>wrote:
> Ethan Furman wrote:
>> On 02/21/2014 03:29 PM, Greg Ewing wrote:
>> value = lst except "No value" if IndexError
>> It does read nicely, and is fine for the single, non-nested, case (which
>> is probably the vast majority), but how would it handle nested exceptions?
> Hmmm, probably not very well, unless we define
> a except b if E1 except c if E2
> to mean
> a except (b except c if E2) if E1
> If E1 == E2, that could perhaps be abbreviated to
> a except b except c if E
> Or we could just decide that the nested case is going
> to be so rare it's not worth worrying about.
+1 on not caring. Keep the expression for simple, obvious cases of a single
exception type and fall back to the statement for fancier use (just like
listcomps). The focus should be ease of expressiveness for a common
pattern, not trying to convert tons of try/except statements into an
expression just because we can.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Python-Dev