Website-Suche

Python Exit-Codes


Damit wären wir das los, lassen Sie uns die Python-Austrittscodes erkunden, wie sie funktionieren und wie Sie sie in Ihren Programmen verwenden können.

Python Standardausgangscodes

Python hat nur zwei Standardcodes, d.h. eine Eins und eine Null. Der Exit-Code 0 bedeutet, dass der Prozess erfolgreich ausgeführt und beendet wurde. Das bedeutet, es trat kein Fehler auf. Andererseits zeigt ein Fehlercode von 1 an, dass der Prozess mit einem Fehler beendet wurde. Lassen Sie uns einen sehr einfachen Programm betrachten, das einfach den String „Willkommen bei linux-console!“ ausgibt.

print("welcome to linux-console!")

Wie Sie erraten können, wird das oben genannte Programm, wenn wir es ausführen, erfolgreich ausgeführt.

python exit_codes.py
welcome to linux-console!

Wir können sehen, dass das Programm die gewünschte Ausgabe zurückgibt. Auf Unix-Systemen können wir den Befehl echo gefolgt von der Umgebungsvariable ? verwenden. Diese Umgebungsvariable ermöglicht es Ihnen, den Exit-Code des zuletzt ausgeführten Befehls abzurufen.

In unserem Fall ist der letzte Befehl das Python-Programm:

echo $?

0

Beachten Sie, dass der obenstehende Befehl 0 zurückgibt. Dies zeigt, dass unser Python-Programm erfolgreich ausgeführt wird.

Hast du jemals deine Shell angepasst, sodass sie ein rotes Symbol zurückgibt, wenn der vorherige Befehl fehlschlägt? Ja, sie verwendet den Exit-Code, um dies zu tun.

Nun nehmen wir ein weiteres Beispiel:

print("welcome to linux-console!"

Fällt Ihnen etwas falsch mit dem obigen Programm auf?

Im obigen Beispiel fehlt der schließende Klammer für die Druckfunktion. Daher wird das Programm oben fehlschlagen und einen Fehler zurückgeben.

python exit_codes.py

File "/Users/username/exit_codes.py", line 2

^

SyntaxError: unexpected EOF while parsing

Hier können wir deutlich sehen, dass das Programm fehlschlägt und einen Fehler zurückgibt.

Lass uns jetzt den Exit-Code überprüfen.

echo $?

1

Du hast es erraten; der Befehl gibt einen Exit-Code von 1 zurück. Das zeigt, dass das vorherige Programm kläglich gescheitert ist.

Python benutzerdefinierte Exit-Codes – Das SYS-Modul

Eines der nützlichsten Module, die ich anderen Python-Enthusiasten empfehle zu lernen, ist das SYS-Modul.

Es ist ein großartiges Modul, das in Pythons Standardbibliothek integriert ist, aber außergewöhnliche Systemfunktionen bietet.

Genug Lob; wir können eine der Funktionen aus dem SYS-Modul verwenden, um benutzerdefinierte Rückgabecodes in unseren Python-Programmen zu erstellen.

Die Funktion heißt exit() und hat die folgende Syntax:

sys.exit([arg])

Wie Sie sehen können, hat die Funktion eine relativ einfache Syntax.

Es ermöglicht Ihnen, den arg-Parameter anzugeben, der optional ist. Er kann eine ganze Zahl oder ein beliebiges unterstütztes Objekt sein.

Wenn das angegebene Argument eine Ganzzahl null oder None ist, wird es als erfolgreiche Ausführung betrachtet. Für jeden anderen Wert über null zeigt es eine abnormale Beendigung an.

Obwohl es vom System abhängt, kann der Wert des Exit-Codes zwischen 0 und 127 liegen.

Sie können auch einen String übergeben, der angezeigt wird, wenn das Programm beendet wird.

Nehmen Sie das folgende Beispielprogramm, das einen Rückgabecode von 125 zurückgibt.

from sys import exit

print("Hi!")

exit(125)

print("Welcome to linux-console")

Im obigen Beispielprogramm beginnen wir damit, die Exit-Funktion aus dem sys-Modul zu importieren.

Wir verwenden dann die Druckanweisung, um einen Text auf dem Bildschirm auszugeben.

Für den wichtigen Teil verwenden wir die Exit-Funktion und übergeben den Exit-Code als 125.

HINWEIS: Sobald Python die exit()-Funktion trifft, wird das Programm sofort beendet und der angegebene Exit-Code oder die Nachricht zurückgegeben.

Wir können dies überprüfen, indem wir das Programm wie folgt ausführen:

python3 exit_codes.py

Hi!

Wir können aus der obigen Ausgabe erkennen, dass die zweite Druckanweisung nicht ausgeführt wird.

Lass uns den Exit-Code überprüfen als:

echo $?

125

Wir können sehen, dass der Exit-Code 125 ist, wie in unserem Programm angegeben.

Betrachten Sie das folgende Beispiel, das einen String anstelle eines Exit-Codes ausgibt.

from sys import exit

print("Hi!")

exit("Program terminated unexpectedly")

print("Welcome to linux-console")

In diesem Fall verwenden wir einen Zeichenfolgenliteral als das arg-Parameter innerhalb der Funktion. Sobald wir das Programm ausführen:

python3 exit_codes.py

Hi!

Programm unerwartet beendet

Wir können sehen, dass das Programm die Nachricht vor der Exit-Funktion und die in der Exit-Funktion ausgibt.

Kannst du erraten, was der Ausstiegscode des obenstehenden Programms ist? Lass es uns sehen:

echo $?

1

Ja, es ist eines. Alle abnormalen Beendigungen des Programms, die keine eigenen benutzerdefinierten Codes bereitstellen, erhalten einen Exit-Code von 1.

HINWEIS: Verwenden Sie die Exit-Funktion, wenn Sie Ihr Programm sofort beenden müssen.

Fazit

Und damit sind wir am Ende unseres Tutorials angekommen. In diesem Artikel haben wir gelernt, wie Python-Ausgangscodes funktionieren und wie man benutzerdefinierte Ausgangscodes mit dem sys-Modul erstellt.

Viel Spaß beim Programmieren und wie immer, danke fürs Lesen!!