Comandi di uscita Python: quit(), exit(), sys.exit() e os._exit()

Le funzioni quit(), exit(), sys.exit() e os._exit() hanno quasi la stessa funzionalità poiché sollevano l'eccezione SystemExit con la quale l'interprete Python esce e non viene stampata alcuna traccia dello stack. Possiamo cogliere l'eccezione per intercettare le uscite anticipate ed eseguire attività di pulizia; se non catturato, l'interprete esce come al solito. In questo articolo vedremo come uscire dal file Pitone programma.

Cosa sono i comandi di uscita Python?

I comandi di uscita in Python si riferiscono a metodi o istruzioni utilizzati per terminare l'esecuzione di un programma Python o uscire dall'interprete Python. I comandi di uscita comunemente usati includono ` sys.exit() ', ' Uscita() ', e ' esentato() `. Questi comandi arrestano il programma o l'interprete, consentendo all'utente di terminare normalmente l'esecuzione. ci sono alcuni comandi in Python per uscire qui stiamo discutendo questi comandi in breve i comandi sono i seguenti

  • quit() in Python
  • exit() in Python
  • sys.exit() utilizzando Python
  • os._exit() in Pitone

Nota : In modalità interattiva (eseguendo Python nel terminale), in genere puoi uscire digitando exit()> O quit()> senza parentesi.

Comando di uscita Python utilizzando la funzione quit()

IL esentato() La funzione funziona come comando di uscita in Python solo se il modulo del sito viene importato, quindi non deve essere utilizzato nel codice di produzione. Codice di produzione significa che il codice viene utilizzato dal pubblico previsto in una situazione del mondo reale. Questa funzione dovrebbe essere utilizzata solo nell'interprete. Genera l'eccezione SystemExit dietro le quinte. Se lo stampi, darà un messaggio e terminerà un programma in Python.

Esempio: Nel codice fornito, quando i> è uguale a 5, viene stampato esentato e tenta di uscire dall'interprete Python utilizzando il file quit()> funzione. Se i> non è uguale a 5, stampa il valore di i> .

Python3




for> i> in> range> (> 10> ):> > if> i> => => 5> :> > print> (quit)> > quit()> > print> (i)>

Produzione:

0 1 2 3 4 Use quit() or Ctrl-D (i.e. EOF) to exit 

Comando di uscita Python utilizzando funzione exit()

exit() in Python è definito come comandi di uscita in Python se in site.py e funziona solo se il modulo del sito viene importato, quindi dovrebbe essere utilizzato solo nell'interprete. È come un sinonimo di quit() per rendere Python più user-friendly. Anch'esso fornisce un messaggio quando viene stampato e termina un programma in Python.

Esempio : Nel codice fornito, quando i> è uguale a 5, viene stampato Uscita e tenta di uscire dall'interprete Python utilizzando il file exit()> funzione. Se i> non è uguale a 5, stampa il valore di i> .

Python3




for> i> in> range> (> 10> ):> > if> i> => => 5> :> > print> (exit)> > exit()> > print> (i)>

Produzione:

0 1 2 3 4 Use exit() or Ctrl-D (i.e. EOF) to exit 

sys.exit([arg]) utilizzando Python

A differenza di quit() ed exit(), sys.exit() è considerato come comando di uscita in Python se è sempre disponibile un buon utilizzo nel codice di produzione per il modulo sys. L'argomento facoltativo arg può essere un numero intero che fornisce l'uscita o un altro tipo di oggetto. Se è un numero intero, zero è considerato una conclusione riuscita.
Nota: Una stringa può anche essere passata al metodo sys.exit().

Esempio: Nel codice indicato, il sys.exit('Age less than 18')> line terminerà lo script Python con un messaggio Età inferiore a 18 anni se la variabile age> è inferiore a 18. Se age> è 18 o superiore, verrà stampato L'età non è inferiore a 18 anni. Questo codice viene utilizzato per uscire dallo script con un messaggio specifico quando viene soddisfatta una determinata condizione. E interrompe un programma in Python.

Python3




import> sys> age> => 17> if> age <> 18> :> > sys.exit(> 'Age less than 18'> )> else> :> > print> (> 'Age is not less than 18'> )>

Produzione:

An exception has occurred, use %tb to see the full traceback. SystemExit: Age less than 18 

os._exit(n) in Python

IL os._exit() Il metodo in Python viene utilizzato per uscire dal processo con lo stato specificato senza chiamare gestori di pulizia, svuotare i buffer stdio, ecc.

Nota: Questo metodo viene normalmente utilizzato nel processo figlio dopo la chiamata di sistema os.fork(). Il modo standard per uscire dal processo è il metodo sys.exit(n).

Esempio : In questo esempio il codice Python seguente crea una relazione di processo genitore-figlio utilizzando os.fork()> . Il processo genitore attende che il processo figlio finisca e recupera il suo codice di uscita, mentre il processo figlio stampa un messaggio ed esce con un codice di stato di successo.

Python3




import> os> pid> => os.fork()> if> pid>> 0> :> > > print> (> ' In parent process'> )> > info> => os.waitpid(pid,> 0> )> > if> os.WIFEXITED(info[> 1> ]) :> > code> => os.WEXITSTATUS(info[> 1> ])> > print> (> 'Child's exit code:'> , code)> > else> :> > print> (> 'In child process'> )> > print> (> 'Process ID:'> , os.getpid())> > print> (> 'Hello ! Geeks'> )> > print> (> 'Child exiting..'> )> > > os._exit(os.EX_OK)>

Produzione:

In child process Process ID: 25491 Hello ! Geeks Child exiting.. In parent process Child's exit code: 0 

Conclusione

Tra le quattro funzioni di uscita precedenti, sys.exit() è preferita soprattutto perché le funzioni exit() e quit() non possono essere utilizzate nel codice di produzione mentre os._exit() è per casi speciali solo quando è richiesta l'uscita immediata.