pauliwago pauliwago - 4 months ago 10
Python Question

Capture Control-C in Python

I want to know if it's possible to catch a Control-C in python in the following manner:

if input != contr-c:
#DO THINGS
else:
#quit


I've read up on stuff with
try
and
except KeyboardInterrupt
but they're not working for me.

Answer

Consider reading this page about handling exceptions.. It should help.

As @abarnert has said, do sys.exit() after except KeyboardInterrupt:.

Something like

try:
    # DO THINGS
except KeyboardInterrupt:
    # quit
    sys.exit()

You can also use the built in exit() function, but as @erykson pointed out, sys.exit is more reliable.