quitar - python remove tags from text
Elimine el rastreo en Python en Ctrl-C (7)
¿Hay alguna forma de evitar que aparezcan las trazas de retorno cuando presionas Ctrl + c , es decir, aumentar KeyboardInterrupt
en un script de Python?
Atrapa el Interruptor de KeyboardInterrupt
:
try:
# do something
except KeyboardInterrupt:
pass
Atrapalo con un bloque try / except:
while True:
try:
print "This will go on forever"
except KeyboardInterrupt:
pass
Prueba esto:
import signal
signal.signal(signal.SIGINT, lambda x,y: sys.exit(0))
De esta manera, no es necesario envolver todo en un controlador de excepciones.
También tenga en cuenta que, de forma predeterminada, el intérprete sale con el código de estado 128 + el valor de SIGINT en su plataforma (que es 2 en la mayoría de los sistemas).
import sys, signal
try:
# code...
except KeyboardInterrupt: # Suppress tracebacks on SIGINT
sys.exit(128 + signal.SIGINT) # http://tldp.org/LDP/abs/html/exitcodes.html
import sys
try:
# your code
except KeyboardInterrupt:
sys.exit(0) # or 1, or whatever
Es la forma más sencilla, asumiendo que aún desea salir cuando obtiene Ctrl + c .
Si quieres atraparlo sin probar / probar, puedes usar una receta como esta usando el módulo de signal
, excepto que parece que no funciona para mí en Windows ...
import sys
try:
print("HELLO")
english = input("Enter your main launguage: ")
print("GOODBYE")
except KeyboardInterrupt:
print("GET LOST")
try:
your_stuff()
except KeyboardInterrupt:
print("no traceback")