str salto print los linea imprimir end definición comandos python

salto - Comandos de salida de Python: ¿por qué tantos y cuándo se deben usar?



print salto de linea python (4)

Diferentes medios de salida

os._exit() :

  • Salga del proceso sin llamar a los manejadores de limpieza.

exit(0) :

  • Una salida limpia sin ningún error / problema.

exit(1) :

  • Hubo algún problema / error / problema y es por eso que el programa está saliendo.

sys.exit() :

  • Cuando el sistema y la pitón se apagan; significa que se está utilizando menos memoria después de ejecutar el programa.

quit() :

  • Cierra el archivo python.

Resumen

Básicamente, todos hacen lo mismo, sin embargo, también depende de para qué lo haces.

No creo que hayas omitido nada y recomendaría que te acostumbras a quit() o exit() .

sys.exit() y os._exit() principalmente si está usando archivos grandes o está usando python para controlar el terminal.

De lo contrario, utilice principalmente exit() o quit() .

Parece que Python admite muchos comandos diferentes para detener la ejecución del script.
Las opciones que he encontrado son: quit() , exit() , sys.exit() , os._exit()

¿Me he perdido alguno? ¿Cual es la diferencia entre ellos? ¿Cuándo usarías cada uno?


Las funciones * quit() , exit() y sys.exit() funcionan de la misma manera: SystemExit excepción SystemExit . Por lo tanto, no hay una diferencia real, excepto que sys.exit() siempre está disponible, pero exit() y quit() solo están disponibles si se importa el módulo del site .

La función os._exit() es especial, se cierra inmediatamente sin llamar a ninguna función de limpieza (por ejemplo, no vacía búferes). Esto está diseñado para casos de uso altamente especializados ... básicamente, solo en el niño después de una llamada os.fork() .

Conclusión

  • Use exit() o quit() en el REPL.

  • Use sys.exit() en scripts, o raise SystemExit() si lo prefiere.

  • Use os._exit() para que los procesos secundarios salgan después de una llamada a os.fork() .

Todos estos pueden ser llamados sin argumentos, o puede especificar el estado de salida, por ejemplo, exit(1) o raise SystemExit(1) para salir con el estado 1. Tenga en cuenta que los programas portátiles están limitados para salir de los códigos de estado en el rango 0- 255, si raise SystemExit(256) en muchos sistemas, esto se truncará y su proceso realmente saldrá con el estado 0.

Notas al pie

* En realidad, quit() y exit() son objetos de instancia invocables, pero creo que está bien llamarlos funciones.


Permítanme darles alguna información sobre ellos:

  1. quit levanta la excepción SystemExit detrás de escena.

    Además, si lo imprimes, aparecerá un mensaje:

    >>> print (quit) Use quit() or Ctrl-Z plus Return to exit >>>

    Esta funcionalidad se incluyó para ayudar a las personas que no conocen Python. Después de todo, una de las cosas más probables en que un novato intentará salir de Python es escribir quit .

    Sin embargo, quit no debe utilizarse en el código de producción. Esto se debe a que solo funciona si el módulo del site está cargado. En su lugar, esta función solo debe usarse en el intérprete.

  2. exit es un alias para quit (o viceversa). Existen juntos simplemente para hacer que Python sea más fácil de usar.

    Además, también da un mensaje cuando se imprime:

    >>> print (exit) Use exit() or Ctrl-Z plus Return to exit >>>

    Sin embargo, como quit , la exit se considera mala para usar en el código de producción y se debe reservar para usar en el intérprete. Esto se debe a que también se basa en el módulo del site .

  3. sys.exit genera la excepción SystemExit en segundo plano. Esto significa que es lo mismo que quit y exit a ese respecto.

    Sin embargo, a diferencia de esos dos, sys.exit se considera bueno para usar en el código de producción. Esto se debe a que el módulo sys siempre estará allí.

  4. os._exit sale del programa sin llamar a los manejadores de limpieza, al vaciar los buffers de stdio, etc. Por lo tanto, no es una forma estándar de salir y solo se debe utilizar en casos especiales. El más común de estos está en los procesos secundarios creados por os.fork .

    Tenga en cuenta que, de los cuatro métodos dados, solo este es único en lo que hace.

En resumen, los cuatro métodos salen del programa. Sin embargo, los dos primeros se consideran malos para usar en el código de producción y el último es una forma sucia no estándar que solo se usa en escenarios especiales. Entonces, si quiere salir de un programa normalmente, vaya con el tercer método: sys.exit .

O, incluso mejor, en mi opinión, puedes hacer directamente lo que sys.exit hace entre bastidores y ejecutar:

raise SystemExit

De esta manera, no es necesario importar primero el sistema.

Sin embargo, esta elección es sencillamente una cuestión de estilo y depende exclusivamente de usted.


sys.exit es la forma canónica de salir.

Internamente sys.exit solo genera SystemExit . Sin embargo, llamar a sys.exit es más idiomático que elevar SystemExit directamente.

os.exit es una llamada del sistema de bajo nivel que sale directamente sin llamar a ningún controlador de limpieza.

quit y exit existen solo para proporcionar una salida fácil del indicador de Python. Esto es para usuarios nuevos o usuarios que ingresaron accidentalmente en el indicador de Python y no desean conocer la sintaxis correcta. Es probable que intenten escribir exit o quit . Si bien esto no saldrá del intérprete, al menos emite un mensaje que les indica una salida:

>>> exit Use exit() or Ctrl-D (i.e. EOF) to exit >>> exit() $

Básicamente, se trata de un truco que utiliza el hecho de que el intérprete imprime el __repr__ de cualquier expresión que ingrese en el indicador.