Apart from a bare except:
clause (which as others have said you shouldn't use), you can simply catch Exception
:
import traceback
import logging
try:
whatever()
except Exception as e:
logging.error(traceback.format_exc())
# Logs the error appropriately.
You would normally only ever consider doing this at the outermost level of your code if for example you wanted to handle any otherwise uncaught exceptions before terminating.
The advantage of except Exception
over the bare except
is that there are a few exceptions that it wont catch, most obviously KeyboardInterrupt
and SystemExit
: if you caught and swallowed those then you could make it hard for anyone to exit your script.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…