[Python-Dev] Small suggestion re help(Exception)

Rob Cliffe rob.cliffe at btinternet.com
Wed Apr 21 18:52:08 CEST 2010


----- Original Message ----- 
From: "Aurélien Campeas" <aurelien.campeas at logilab.fr>
To: "Rob Cliffe" <rob.cliffe at btinternet.com>
Sent: Wednesday, April 21, 2010 5:25 PM
Subject: Re: [Python-Dev] Small suggestion re help(Exception)


> like in
>
>>>> ArithmeticError.__subclasses__()
> [<type 'exceptions.FloatingPointError'>, <type
> 'exceptions.OverflowError'>, <type 'exceptions.ZeroDivisionError'>]
>
> ?

Yes, exactly like that.
I wasn't aware of __subclasses__ (it doesn't appear in dir(ArithmeticError), 
for example), but if my suggestion were adopted, __subclasses__ would be 
just what is needed to implement it.
Rob Cliffe


>
> Le mercredi 21 avril 2010 à 17:17 +0100, Rob Cliffe a écrit :
>> help() on an Exception class lists the method resolution order
>> (effectively the inheritance hierarchy).
>> E.g. help(ArithmeticError) displays inter alia:
>>
>> Method resolution order:
>>     ArithmeticError
>>     StandardError
>>     Exception
>>     BaseException
>>     __builtin__.object
>>
>> Would it be possible for it also display the Python built-in
>> SUBclasses of the class?  E.g. in the same example something like:
>>
>> Built-in subclasses:
>>     FloatingPointError
>>     OverflowError
>>     ZeroDivisionError
>>
>> This may seem pointless to grizzled old Python veterans who (maybe)
>> know the inheritance hierarchy backwards, but for those of us with
>> less experience I think it would be helpful, e.g.
>> (1) It would help to track down an Exception whose name you have
>> forgotten.
>> (2) It would sometimes be illuminating, e.g. LookupError might be a
>> bit obscure at first, until you see that it is the superclass of the
>> familiar IndexError and KeyError.
>>
>> Sorry, I'm not sure if I should send this sort of thing to
>> Python-Ideas or Python-Dev, so please let me know gently which one I
>> should (not) have sent it to.
>>
>> Best wishes
>> Rob Cliffe
>> _______________________________________________
>> Python-Dev mailing list
>> Python-Dev at python.org
>> http://mail.python.org/mailman/listinfo/python-dev
>> Unsubscribe: 
>> http://mail.python.org/mailman/options/python-dev/aurelien.campeas%40logilab.fr
>
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20100421/e4ac315d/attachment.html>


More information about the Python-Dev mailing list