On 16/11/2011 17:09, Chris Kaynor wrote:
On Wed, Nov 16, 2011 at 8:57 AM, Frederic Rentsch
<anthra.nor...@bluewin.ch> wrote:
Hi all,
I'd like to log MySQL errors. If I do:
try: (command)
except MySQLdb.OperationalError, e: print e
I may get something like:
(1136, "Column count doesn't match value count at row 1")
If I don't know in advance which error to expect, but on the contrary
want to find out which error occurred, I can catch any error by omitting
the name:
except: (handle)
But now I don't have access to the error message 'e'. I'm sure there's a
way and it's probably ridiculously simple.
except Exception, e: (or, in Py3, except Exception as e is prefereed).
In Python 3, "except Exception as e" is not just preferred: it's the
only form.
Note that you should generally avoid bare except statements "except:"
as that will catch everything, including KeyboardInterrupt and
SystemExit which may not be desirable.
[snip]
Very true.
--
http://mail.python.org/mailman/listinfo/python-list