Je veux savoir s'il est possible d'attraper un Control-C dans python de la manière suivante:
if input != contr-c:
#DO THINGS
else:
#quit
J'ai lu des trucs avec try
et except KeyboardInterrupt
mais ils ne travaillent pas pour moi.
Pensez à lire this page sur la gestion des exceptions .. Cela devrait aider.
Comme @ abarnert l'a dit, faites sys.exit()
après except KeyboardInterrupt:
.
Quelque chose comme
try:
# DO THINGS
except KeyboardInterrupt:
# quit
sys.exit()
Vous pouvez également utiliser la fonction exit()
intégrée, mais comme @ eryksun l'a souligné, sys.exit
Est plus fiable.
D'après vos commentaires, cela semble être votre seul problème avec except KeyboardInterrupt:
est que vous ne savez pas comment le faire sortir lorsque vous obtenez cette interruption.
Si oui, c'est simple:
import sys
try:
user_input = input()
except KeyboardInterrupt:
sys.exit(0)