Einführung in die Behandlung von Python-Ausnahmen
Ausnahmen werden in Python mithilfe von zwei Haupttechniken behandelt. Es handelt sich dabei um eine Behauptungs- und Ausnahmebehandlung. In diesem Kapitel werden die Techniken zur Behandlung von Python-Ausnahmen erläutert
Jedes Ereignis, das die normale Ausführung des Programmablaufs beeinträchtigt, wird als Ausnahme bezeichnet. Der Try-Block enthält mögliche Fehler bei der Codegenerierung. Das Ordnen und Verwalten dieser Ausnahmen wird vom except-Block ausgeführt, der am Ende jedes try-Blocks eingefügt wird. Ein einzelner Try-Block kann zu einem bestimmten Zeitpunkt mehr als eine Ausnahme zuordnen, während der else-Block unter den normalen Programmablauf fällt. Der gesamte Code, für den kein Try-Block-Schutz erforderlich ist, wird im else-Block des Programms abgelegt.
Syntax:
try: Executes when suspicious code is executed
except Exception1: Executed when
exception 1 is raised
except Exception2: Executed when exception 2 is raised
else: If there is no exception then execute this block
Standard-Ausnahmeliste
Ausnahme: Alle Ausnahmen Basisklasse
StopIteration: Wenn die nächste Methode des Iterators auf kein Objekt verweist, wird diese Ausnahme ausgelöst
SystemExit: Wird über die Funktion sys.exit () aufgerufen.
StandardError: Mit Ausnahme von StopIteration und SystemExit fungiert dies als Basisklasse für alle integrierten Funktionen.
ArithmeticError: Für alle numerischen Fehler fungieren diese Ausnahmen als Basisklasse.
OverflowError: Bei einem numerischen Typ wird dieser Fehler ausgelöst, wenn die Berechnung den maximal möglichen Wert überschreitet.
FloatingPointError: Ein fehlgeschlagener Float-Vorgang löst diesen Fehler aus
ZeroDivisionError: Wird ausgelöst, wenn im Code eine Division durch Null auftritt
AssertionError: Wenn die assert-Anweisung fehlschlägt, wird dieser Fehler ausgelöst
AttributeError: Wenn eine Zuweisung oder eine Attributreferenz fehlschlägt, wird dieser Fehler ausgelöst
EOFErroR: Wird ausgelöst, wenn von der Funktion und dem Dateiende keine Eingabe mehr erfolgt
ImportError: Wird ausgelöst, wenn eine Importdeklaration fehlschlägt.
KeyboardInterrupt: Wird ausgelöst, wenn die Programmausführung unterbrochen wird
LookupError: Alle Lookup-Fehler fallen unter diese Basisklasse
IndexError: Wird ausgelöst, wenn der Index nicht gefunden wurde
KeyError: Wird ausgelöst, wenn das Wörterbuch den angegebenen Schlüsselwert nicht enthält
NameError: Wird für einen fehlenden Bezeichner lokal oder global im Programm ausgelöst
UnboundLocalError: Wird ausgelöst, wenn eine lokale Variable verwendet wird, der kein Wert zugewiesen wurde.
EnvironmentError: Basisklasse für umgebungsorientierte Fehler, die außerhalb von Python auftreten
IOError: Wird ausgelöst, wenn ein Eingabe- / Ausgabeprozess nicht erfolgreich war
SyntaxError: Alle Python-Syntax-orientierten Fehler werden von dieser Ausnahme behandelt
IndentationError: Falsche Einrückung führt zu solchen Fehlern
SystemError: Dies tritt in einer Situation auf, in der der Interpreter nicht wie erwartet funktioniert, dieser Fehler jedoch dazu führt, dass das Python-Programm nicht mehr ausgeführt wird
SystemExit: Wenn die Funktion sys.exit () vom Python-Interpreter verwendet wird, führt dies zu dieser Ausnahme. Dadurch wird der Code abnormal beendet, wenn er nicht ordnungsgemäß verarbeitet wurde.
TypeError: Wenn eine Operation für einen bestimmten Datentyp ungültig ist, wird dieser Fehler angezeigt
ValueError: Wenn eine Funktion ein gültiges Typargument enthält, für dieses Typargument jedoch ein falscher Wert angegeben wurde
RuntimeError: Wenn eine der oben genannten Kategorien nicht erfüllt ist, wird dieser Fehler ausgelöst
NotImplementedError: Wird ausgelöst, wenn eine nicht konfigurative Methode, die in einer geerbten Klasse in die Praxis umgesetzt werden soll, tatsächlich nicht implementiert ist. Das Ordnen und Verwalten dieser Ausnahmen wird vom except-Block ausgeführt, der am Ende jedes try-Blocks eingefügt wird.
Ausnahmebehandlungsprozess in Python
- Ausnahmeklausel mit mehreren Ausnahmen
- Ausnahmeklausel ohne Ausnahme erwähnt
- Ausnahmeklausel mit Argumenten
Im Folgenden wird der Ausnahmebehandlungsprozess in Python erläutert
1. Ausnahmeklausel mit mehreren Ausnahmen
Auf diese Weise können mehrere except-Anweisungen in einer except-Klausel deklariert werden, und alle diese deklarierten Ausnahmen können aus dieser except-Klausel ausgelöst werden.
Syntax:
try: Code block1
except(Exception1(, Exception2(, …ExceptionN)))):
Executes when one among the exception happens
else: Executed when no exception is raised
2. Ausnahmeklausel ohne Ausnahme
Alle vom try-Block ausgelösten Ausnahmen können hier verarbeitet werden.
Syntax:
try:
Code block1
except:
Executes if any type of exception happens
else:
If there is no exception then execute this block
3. Außer Klausel mit Argumenten
Die eigentliche Ursache der Ausnahme wird im Argument value festgehalten
Syntax:
try:
Code block1except
ExceptionType, Argument:
Argument value is printed here
4. Ausnahmebehandlungsprogramm
Syntax:
try:
fh = open("testfile1", "w")
try:
fh.write("Exception handeling")
finally:
print "Going to close the file"
fh.close()
except IOError:
print "Error: can\'t find file or read data"
Fazit
In jeder Programmiersprache wird immer dann eine Ausnahme ausgelöst, wenn unerwartete Situationen auftreten, und Python ist eine davon, die tiefgreifende Techniken für den Umgang mit diesen Ausnahmen hervorbringt, was die Programmiersprache zu einer starken Basis macht.
Empfohlener Artikel
Dies war eine Anleitung zur Behandlung von Python-Ausnahmen. Hier diskutieren wir die Standard-Ausnahmeliste und verarbeiten sie zusammen mit der Syntax. Sie können auch unsere anderen Artikelvorschläge durchgehen, um mehr zu erfahren -
- Vorteile von Python
- Python-Frameworks
- Muster in Python
- Python-Compiler
- Ausnahmebehandlung in VB.NET (Beispiele)
- Wörterbuch in Python
- VB.Net-Veranstaltungen