2012-01-09 23 views
11

Sé que ahora no podemos usar sys.exit(). Entonces, ¿cómo salgo en la nueva versión de Python?¿Cómo salir en Python 3.2?

+2

Lo que hace decir que no se puede usar 'sys.exit()'? Aparece en la documentación de Python 3.2.2: http://docs.python.org/py3k/library/sys.html#sys.exit –

+3

Esta pregunta no es de ninguna manera ambigua, es una pregunta real, y puede ser totalmente razonablemente respondida en su forma actual ... – bfieck

Respuesta

16
import sys 
sys.exit() 

detalles de la sys module documentation:

salida ([arg])

salida desde Python. Esto se implementado por lanzar la excepción SystemExit , por lo que las acciones de limpieza especificados por último, las cláusulas de tratar declaraciones son honrados, y es posible interceptar el intento de salida a nivel externo. El argumento opcional arg puede ser un número entero que da el estado de salida (valor predeterminado a cero), u otro tipo de objeto. Si es un número entero , cero se considera successful termination'' and any nonzero value is considered anormal terminación por proyectiles y similares. La mayoría de los sistemas requieren que esté en el rango 0-127, y producen resultados indefinidos de lo contrario. Algunos sistemas tienen una convención para asignar significados específicos de a códigos de salida específicos, pero generalmente no están desarrollados; Los programas Unix generalmente usan 2 para errores de sintaxis en la línea de comandos y 1 para todo otro tipo de errores. Si se pasa otro tipo de objeto, ninguno es equivalente a pasar cero, y cualquier otro objeto se imprime a sys.stderr y los resultados en un código de salida de 1. En particular, , sys.exit ("algún error mensaje ") es una manera rápida de salir de un programa cuando ocurre un error.

Source

+0

¿Entonces esto es normal? Rastreo (llamada más reciente pasado): archivo "C: \ Python32 \ test", línea 5, en sys.exit() SystemExit –

+1

@KarthikSampath: Si se produce un error, es una buena idea decir lo que en la pregunta. Por favor, actualice la pregunta con un ejemplo de código y una excption completa. sys.exit() genera una excepción SystemExit, sí. Tu código probablemente atrapa esa excepción en alguna parte. –

+0

Bien, gracias. Pensé que simplemente saldría del programa como en C++. Lo siento por la molestia. –

Cuestiones relacionadas