Context Manager getting str instead of AttributeError instance
ramit.prasad at jpmorgan.com
Thu Mar 15 18:34:44 CET 2012
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 is different 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 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.
More information about the Python-list