programa - ¿Cómo aborto la ejecución de un script de Python?
interprete de python (8)
Para salir de un script puede usar,
import sys
sys.exit()
También puede proporcionar un valor de estado de salida, generalmente un número entero.
import sys
sys.exit(0)
Sale con cero, lo que generalmente se interpreta como éxito. Los códigos distintos de cero generalmente se tratan como errores. El valor predeterminado es salir con cero.
import sys
sys.exit("aa! errors!")
Imprime "aa! Errors!" y sale con un código de estado de 1.
También hay una función _exit () en el módulo os. La función sys.exit() genera una excepción SystemExit para salir del programa, por lo que las instrucciones try y el código de limpieza pueden ejecutarse. La versión os._exit () no hace esto. Simplemente finaliza el programa sin realizar ninguna limpieza o limpieza de buffers de salida, por lo que normalmente no debería utilizarse.
Los documentos de Python indican que os._exit () es la manera normal de finalizar un proceso hijo creado con una llamada a os.fork (), por lo que tiene un uso en ciertas circunstancias.
Posible duplicado:
Terminar una secuencia de comandos de Python
Tengo un script de Python simple que quiero dejar de ejecutar si se cumple una condición.
Por ejemplo:
done = True
if done:
# quit/stop/exit
else:
# do other stuff
Básicamente, estoy buscando algo que se comporte de manera equivalente a la palabra clave ''return'' en el cuerpo de una función que permite que el flujo del código salga de la función y no ejecute el código restante.
Podrías poner el cuerpo de tu script en una función y luego podrías regresar de esa función.
def main():
done = True
if done:
return
# quit/stop/exit
else:
# do other stuff
if __name__ == "__main__":
#Run as main program
main()
Puedes usar:
import sys
sys.exit(...)
o:
raise SystemExit(...)
El parámetro opcional puede ser un código de salida o un mensaje de error. Ambos métodos son idénticos. Antes prefería sys.exit, pero últimamente cambié a subir SystemExit, porque parece destacarse mejor entre el resto del código (debido a la palabra clave raise ).
Si todo el programa debe dejar de usar sys.exit () de lo contrario, simplemente use un retorno vacío.
Tratar
sys.exit("message")
Es como el perl
die("message")
si esto es lo que estás buscando Termina la ejecución del script, incluso si se llama desde un módulo / def / función importado.
exit () debería hacer el truco
exit () debería hacerlo.
import sys
sys.exit()