Context Manager getting str instead of AttributeError instance

P

Prasad, Ramit

So I have a context manager used to catch errors

def __exit__( self, exceptionClass, exception, tracebackObject ):
if isinstance( exception, self.exceptionClasses ):
#do something here

Normally exception would be the exception instance, but for
AttributeError it seems to be a string instead.

1) Why is AttributeError different than the other built-ins
in this respect?
2) Are there other standard errors like this (I know
that SystemExit isdifferent as well)?
3) Taking into account that I want to include subclasses of
classes listed in self.exceptionClasses, Is there a better check I can use?

Ramit


Ramit Prasad | JPMorgan Chase Investment Bank | Currencies Technology
712 Main Street | Houston, TX 77002
work phone: 713 - 216 - 5423

--


This email is confidential and subject to important disclaimers and
conditions including on offers for the purchase or sale of
securities, accuracy and completeness of information, viruses,
confidentiality, legal privilege, and legal entity disclaimers,
available at http://www.jpmorgan.com/pages/disclosures/email.
 

Members online

Forum statistics

Threads
473,776
Messages
2,569,603
Members
45,189
Latest member
CryptoTaxSoftware

Latest Threads

Top