refer http://www.ianbicking.org/blog/2007/09/re-raising-exceptions.html
def exception():
raise ValueError('A very specific bad thing happend')
def callException():
# exception()
try:
exception()
except ValueError, e:
print str(e)
raise
def main():
callException()
if __name__ == '__main__': main()
Using raise with no arguments re-raises the last exception. Sometimes people give a blank never use “except:“ statement, but this particular form ( except: + raise ) is okay.