Setting exit code in Python when an exception is raised

exception, exit-code, python

Solution

Take a look at the `traceback` module. You could do the following:

import sys, traceback

try:
  raise Exception()
except:
  traceback.print_exc()
  sys.exit(3)

This will write traceback to standard error and exit with code 3.

Problem

``` $ cat e.py raise Exception $ python e.py Traceback (most recent call last): File "e.py", line 1, in <module> raise Exception Exception $ echo $? 1 ``` I would like to change this exit code from 1 to 3 while still dumping the full stack trace. What's the best way to do this?

Original source