try..except with empty exceptions

Dave Angel davea at
Sat Apr 11 05:46:43 CEST 2015

On 04/10/2015 10:38 PM, Rustom Mody wrote:
> On Saturday, April 11, 2015 at 7:53:31 AM UTC+5:30, Dave Angel wrote:
>> On 04/10/2015 09:42 PM, Steven D'Aprano wrote:
>>> On Sat, 11 Apr 2015 05:31 am, sohcahtoa82 wrote:
>>>> It isn't document because it is expected.  Why would the exception get
>>>> caught if you're not writing code to catch it?  If you write a function
>>>> and pass it a tuple of exceptions to catch, I'm not sure why you would
>>>> expect it to catch an exception not in the tuple.  Just because the tuple
>>>> is empty doesn't mean that it should catch *everything* instead.  That
>>>> would be counter-intuitive.
>>> Really? I have to say, I expected it.
>> I'm astounded at your expectation.  That's like saying a for loop on an
>> empty list ought to loop on all possible objects in the universe.
> To work, this analogy should also have two python syntaxes like this:
> "Normal" for-loop:
> for var in iterable:
>    suite
> "Empty" for-loop:
> for:
>    suite

That tells me nothing about your opinions.  What did you mean by the 
phrase "to work"?  My analogy already works.  The for loop on an empty 
list loops zero times.  Just like try/except on an empty tuple catches 
zero exception types.

As for the separate syntax, that might be an acceptable extension to 
Python.  But it already has a convention for an infinite loop, which is
      while True:
I'm pretty sure do{} works as an infinite loop in C, but perhaps I'm 
remembering some other language where you could omit the conditional.


More information about the Python-list mailing list