Hi there, I am a newcomer to Pyhton coming from Java working on a relatively large Pyhton project with several packages and modules. To improve exception handling I would like to introduce some user-defined exceptions to distinguish between exceptions raised in self-written code as compared to std libray modules used there-in.
Say, for instance I would like to define a MyParseError exception to indicate that something has gone wrong while parsing a byte string, a file, or while packing into or unpacking from a struct.Struct instance. Here is my stub-implemented idea on how to do it so far, which is inspired by how I would have done it in Java (but which may not be very Pythonic??): class MyException(Exception): pass class MyStandardError(MyException, StandardError): pass class MyParseError(MyStandardError, ValueError): pass Some comments and questions 1. The hierarchy is deliberately deep and maps to the std library such that it is easier to extend 2. The implementations are empty but can be extended with hook for logging, statistics, etc. 3. I use multiple inheritance in the two sub-classes. I have not tried that before. Is this A Good Thing or A Bad Thing to do? 4. Which __xx__ methods would you normally implement for the user- defined exception classes? I was thinking of __str__, for example? Is there a recommended __str__ idiom to use for that? -- Slaunger -- http://mail.python.org/mailman/listinfo/python-list