Lernpfad
Wenn ich mit der Arbeit in Python fertig bin, benutze ich oft einfach den Schließen-Knopf in der Ecke der IDE, um das Programm zu beenden und die IDE kümmert sich um das Beenden von Python. Es gibt jedoch Situationen, in denen ich Python auf programmatische Weise beenden muss, z. B. wenn ich direkt im Terminal arbeite oder wenn ich möchte, dass ein Programm Python nach der Ausführung automatisch schließt. In diesen Fällen sind die in Python eingebauten Exit-Funktionen der richtige Weg.
Die kurze Antwort: So beendest du ein Programm in Python
Verwende exit()
oder quit()
, um Python-Prozesse im Gelegenheitscode zu beenden, und sys.exit()
im Produktionscode. Verwende os._exit()
nur in seltenen Situationen, in denen du keine Aufräumarbeiten durchführen musst. Hier sind Beispiele für die Verwendung von exit()
, quit()
und sys.exit()
in der Praxis:
Beenden von Python mit den Funktionen exit()
oder 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
Beenden von Python mit der sys.exit()
Funktion
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
Was bedeutet es, Python zu verlassen?
Beim Beenden von Python wird der Python-Interpreter oder die Python-Sitzung beendet und damit die Ausführung des Python-Programms. Normalerweise werden dabei Aufräumarbeiten durchgeführt, bevor der Interpreter und Python selbst beendet werden. Je nachdem, wie du Python beendest, werden diese Aufräumarbeiten automatisch im Hintergrund durchgeführt. Wie das im Detail funktioniert, erfährst du in diesem Kurs über die Grundlagen der Softwareentwicklung.
Vier Methoden zum Beenden von Python-Code
Es gibt verschiedene Methoden, Python zu beenden, die über die von deiner IDE bereitgestellten hinausgehen. Im Folgenden sehen wir uns ein paar davon an:
Mit dem exit()
oder quit()
Funktionen
Mit der Funktion exit()
kannst du eine SystemExit
Ausnahme auslösen, die den Python-Interpreter beendet. Dies ist vor allem in der interaktiven Interpreter-Shell nützlich. Sie akzeptiert ein optionales Exit-Code-Argument, das normalerweise verwendet wird, um den Grund für den Abbruch anzugeben, aber auch leer gelassen werden kann.
exit()
oder
exit(0) # Exit with a success status
Die Funktion quit()
funktioniert auf die gleiche Weise wie die Funktion exit()
.
quit()
Diese beiden Funktionen wurden vor allem hinzugefügt, um einen Weg aus dem Python-Terminal zu finden. Wenn du nicht wusstest, wie du es schließen sollst, hast du "exit" oder "quit" getippt, um herauszufinden, wie du es verlassen kannst.
Sowohl die Funktion exit()
als auch die Funktion quit()
sind auf das Website-Modul angewiesen, das möglicherweise nicht immer verfügbar ist. Es ist also unklug, dies im Produktionscode zu verwenden.
Mit dem sys.exit()
Funktion für Produktionscode
Im Produktionscode ist es üblich, die Funktion sys.exit()
aus dem Modul sys
zu verwenden, um Python zu beenden, ohne sich auf das Site-Modul zu verlassen. Das Modul sys
ist allgemein verfügbar, aber du musst es importieren. Diese Funktion akzeptiert auch ein optionales Exit-Code-Argument.
Ähnlich wie bei exit()
und quit()
löst sys.exit()
eine SystemExit
Ausnahme aus, die Python beendet.
import sys # In some cases, you may need to import the sys module
sys.exit()
Beende Python schnell mit os._exit()
Zusätzlich zu den Funktionen exit()
und quit()
bietet Python die Funktion os._exit()
für einen schnellen Abbruch mit reduziertem Funktionsumfang. Im Gegensatz zu exit(
) und quit()
, die eine SystemExit-Ausnahme auslösen und dann einige Aufräumarbeiten durchführen. os._exit()
beendet den Python-Prozess sofort, ohne zusätzliche Aufräumarbeiten aufzurufen. Um mehr über Bereinigungsprozesse zu erfahren, lies über Ausnahmen und Fehlerbehandlung in Python oder schau dir diesen Kurs "Python für Entwickler" auf DataCamp an.
Diese Funktion ist nützlich, wenn eine sofortige Beendigung erforderlich ist, z. B. wenn der Interpreter abrupt heruntergefahren werden muss. Aber Vorsicht: Damit umgehst du den normalen Bereinigungsprozess der Python-Laufzeitumgebung, was später zu Problemen führen kann. In den meisten Fällen ist die Verwendung von exit(), quit() oder sys.exit() die bessere Option.
Tastaturkürzel zum Beenden von Python
Im Python-Interpreter oder im Terminal kannst du Python beenden, indem du Strg + Z unter Windows oder Strg + D unter macOS drückst. Diese Abkürzungen signalisieren dem Interpreter, dass die Datei vollständig ist und weisen ihn an, Python zu beenden. Wie os._exit() führt auch diese Methode keine Aufräumarbeiten aus. Wenn du diese Methode verwenden willst, musst du sicherstellen, dass die entsprechenden Aufräumarbeiten in deinem Code explizit angesprochen werden.
Gemeinsame Probleme
Das Wichtigste, was du beim Beenden eines Programms beachten musst, sind die Aufräumarbeiten. Wenn du die Bereinigung nicht abschließt, kann es zu Speicherverlusten, Datenverlusten oder -beschädigungen und einer ganzen Reihe anderer Probleme kommen. Wenn dein Programm anfängt, sich seltsam zu verhalten, überprüfe, ob du die Aufräumarbeiten beim Beenden richtig ausführst.
Ein weiteres häufiges Problem beim Beenden von Python ist das versehentliche Beenden der falschen Sitzung oder des falschen Interpreters, insbesondere in Umgebungen mit mehreren aktiven Sitzungen. Sei vorsichtig, wenn du Tastenkombinationen oder Beendigungsfunktionen verwendest, um sicherzustellen, dass du die beabsichtigte Sitzung beendest.
In anderen Fällen kann es sein, dass du auf einem System arbeitest, auf dem das Site-Modul nicht installiert ist, was exit() und quit() nutzlos macht. Wenn das der Fall ist, solltest du sys.exit() verwenden, da das sys-Modul immer installiert sein wird.
Fazit
Das programmatische Beenden von Python ist ein wichtiger Aspekt der Python-Programmierung. Wenn du die verschiedenen Methoden zum Beenden von Python und ihre praktischen Anwendungen verstehst, kannst du die Ausführung und Beendigung von Python-Code effektiv steuern.
Mehr über die Verwendung von Python-Interpretern erfährst du in diesem Python-Setup-Guide oder in diesem Artikel über Python-Skripte. Lerne in diesem Kurs Einführung in die Shell oder in diesem Kurs Datenverarbeitung in der Shell, wie man die Python Shell benutzt. Wenn du daran interessiert bist, Python-Programmierer/in zu werden, schau dir den Lernpfad für Python-Programmierer/innen von DataCamp an.

Ich bin promoviert und habe 13 Jahre Erfahrung in der Arbeit mit Daten in der biologischen Forschung. Ich entwickle Software in verschiedenen Programmiersprachen, darunter Python, MATLAB und R. Meine Leidenschaft ist es, meine Liebe zum Lernen mit der Welt zu teilen.