try:
someFunction()
except Exception as ex:
template = "An exception of type {0} occurred. Arguments:
{1!r}"
message = template.format(type(ex).__name__, ex.args)
print (message)
except Exception as e: print(e)
>>> try:
... raise Exception('spam', 'eggs')
... except Exception as inst:
... print(type(inst)) # the exception instance
... print(inst.args) # arguments stored in .args
... print(inst) # __str__ allows args to be printed directly,
... # but may be overridden in exception subclasses
... x, y = inst.args # unpack args
... print('x =', x)
... print('y =', y)
...
<class 'Exception'>
('spam', 'eggs')
('spam', 'eggs')
x = spam
y = eggs
print("spam", file=sys.stderr)
except Exception as e:
1 (x,y) = (5,0)
2 try:
3 z = x/y
4 except ZeroDivisionError as e:
5 z = e # representation: "<exceptions.ZeroDivisionError instance at 0x817426c>"
6 print z # output: "integer division or modulo by zero"