Vai al contenuto principale

Come uscire da Python: un tutorial rapido

In questo articolo, vediamo le basi di cosa succede quando termini Python, come uscire da Python usando diverse funzioni di uscita e scorciatoie da tastiera, oltre ai problemi comuni e come evitarli.

Scopri con l'IA

Spesso, quando finisco di lavorare in Python, uso semplicemente il pulsante di chiusura nell’angolo dell’IDE per terminare il programma e l’IDE gestisce l’uscita da Python. Tuttavia, a volte ho bisogno di uscire da Python in modo più programmatico, per esempio quando lavoro direttamente nel terminale o quando voglio che un programma chiuda Python automaticamente dopo l’esecuzione. In questi casi, le funzioni di uscita integrate di Python sono la scelta giusta.

La risposta breve: ecco come puoi uscire da un programma in Python

Usa exit() o quit() per terminare i processi Python in codice informale e sys.exit() nel codice di produzione. Usa os._exit() solo in rare situazioni in cui non ti servono attività di cleanup. Ecco degli esempi di exit(), quit() e sys.exit() in azione:

Uscire da Python con le funzioni exit() o quit()

print("Hello World! Let's exit the program")
exit() # Use the exit() function to terminate processes in casual code
print("Welcome back World!") # this code will not run after exiting
print("Hello World! Let's exit the program")
quit() # Use the quit() function to terminate processes in casual code
print("Welcome back World!") # this code will not run after quitting

Uscire da Python con la funzione sys.exit()

import sys # In some cases, you may need to import the sys module
print("Hello World! Let's exit the program")
sys.exit() # Use the sys.exit() function to terminate processes in production code
print("Welcome back World!") # this code will not run after exiting

Cosa comporta uscire da Python?

Uscire da Python si riferisce al processo di terminazione dell’interprete o della sessione Python, che di fatto interrompe l’esecuzione del programma. Di solito, questo comporta l’esecuzione di attività di cleanup prima di terminare l’interprete e Python stesso. A seconda di come esci da Python, questi processi di cleanup avverranno automaticamente, dietro le quinte. Puoi approfondire i dettagli su come funziona in questo corso sui principi di ingegneria del software.

Quattro metodi per uscire dal codice Python

Esistono diversi metodi per uscire da Python, oltre a quelli forniti dal tuo IDE. Vediamone alcuni qui sotto:

Usare le funzioni exit() o quit()

La funzione exit() può essere usata per generare un’eccezione SystemExit, che termina l’interprete Python. È utile soprattutto nella shell interattiva dell’interprete. Accetta un argomento opzionale con il codice di uscita, solitamente usato per indicare il motivo dell’uscita ma che può anche essere lasciato vuoto.

exit()

oppure

exit(0)  # Exit with a success status

La funzione quit() funziona allo stesso modo di exit().

quit()

Queste due funzioni sono state aggiunte principalmente per trovare facilmente una via d’uscita dal terminale Python. Se non sapevi come chiuderlo, avresti iniziato a digitare “exit” o “quit” come ipotesi ragionevoli per uscire.

Sia exit() sia quit() si appoggiano al modulo site, che potrebbe non essere sempre disponibile. Quindi è sconsigliato usarle nel codice di produzione.

Usare la funzione sys.exit() per il codice di produzione

Nel codice di produzione è prassi comune usare la funzione sys.exit() del modulo sys per uscire da Python senza dipendere dal modulo site. Il modulo sys è generalmente disponibile, ma dovrai importarlo. Anche questa funzione accetta un argomento opzionale con il codice di uscita.

Analogamente a exit() e quit(), sys.exit() genera un’eccezione SystemExit che termina Python.

import sys # In some cases, you may need to import the sys module
sys.exit()

Uscire rapidamente da Python con os._exit()

Oltre alle funzioni exit() e quit(), Python offre la funzione os._exit() per una terminazione rapida con funzionalità ridotte. A differenza di exit() e quit(), che generano un’eccezione SystemExit ed eseguono poi alcune attività di cleanup, os._exit() termina immediatamente il processo Python senza chiamare ulteriori passaggi di cleanup. Per saperne di più sui processi di cleanup, leggi le eccezioni e la gestione degli errori in Python, oppure dai un’occhiata a questo corso Python per sviluppatori su Datacamp.

Questa funzione è utile quando è richiesta una terminazione immediata, ad esempio quando l’interprete deve chiudersi bruscamente. Ma usala con cautela: bypassa il normale processo di cleanup del runtime di Python, cosa che può causare problemi in seguito. Nella stragrande maggioranza dei casi, usare exit(), quit() o sys.exit() è un’opzione migliore.

Scorciatoie da tastiera per uscire da Python

Nell’interprete Python o nel terminale, puoi uscire da Python premendo Ctrl + Z su Windows o Ctrl + D su macOS. Queste scorciatoie segnalano all’interprete che il file è completo e gli dicono di terminare Python. Come os._exit(), questo metodo non esegue alcuna attività di cleanup. Se vuoi usare questo metodo, assicurati di gestire esplicitamente nel tuo codice le attività di cleanup necessarie.

Problemi comuni

La cosa più importante da considerare quando si esce da un programma sono le attività di cleanup. Non completare il cleanup può causare problemi di perdita di memoria, perdita o corruzione dei dati e tutta una serie di altri problemi. Se il tuo programma inizia a comportarsi in modo strano, verifica di eseguire correttamente le attività di cleanup durante l’uscita.

Un altro problema comune quando si esce da Python è terminare inavvertitamente la sessione o l’interprete sbagliati, soprattutto in ambienti con più sessioni attive. Fai attenzione quando usi scorciatoie da tastiera o funzioni di uscita per assicurarti di chiudere la sessione giusta.

Altre volte, potresti lavorare su un sistema che non ha installato il modulo site, il che renderà inutili exit() e quit(). In tal caso, assicurati di usare sys.exit(), dato che il modulo sys sarà sempre installato.

Conclusione

Uscire da Python in modo programmatico è un aspetto importante della programmazione in Python. Capendo i vari metodi per uscire da Python e le loro applicazioni pratiche, puoi gestire in modo efficace l’esecuzione e la terminazione del codice Python.

Scopri di più sull’uso degli interpreti Python in questa guida alla configurazione di Python o in questo articolo sugli script Python. Impara a usare la Python Shell in questo corso Introduzione alla Shell o in questo corso Elaborazione dati in Shell. Se vuoi diventare un programmatore Python, dai un’occhiata al Career Track Python Programmer di DataCamp.

Amberle McKee

Autore

Amberle McKee

Sono un PhD con 13 anni di esperienza nel lavoro con i dati in un contesto di ricerca biologica. Creo software in diversi linguaggi di programmazione, tra cui Python, MATLAB e R. Sono appassionato di condividere con il mondo il mio amore per l’apprendimento.

Argomenti

Correlato