Ist es in Python möglich, mehrere except
Anweisungen für eine try
Anweisung zu haben? Sowie :
try:
#something1
#something2
except ExceptionType1:
#return xyz
except ExceptionType2:
#return abc
Ist es in Python möglich, mehrere except
Anweisungen für eine try
Anweisung zu haben? Sowie :
try:
#something1
#something2
except ExceptionType1:
#return xyz
except ExceptionType2:
#return abc
Antworten:
Ja, es ist möglich.
try:
...
except FirstException:
handle_first_one()
except SecondException:
handle_second_one()
except (ThirdException, FourthException, FifthException) as e:
handle_either_of_3rd_4th_or_5th()
except Exception:
handle_all_other_exceptions()
Siehe: http://docs.python.org/tutorial/errors.html
Das Schlüsselwort "as" wird verwendet, um den Fehler einer Variablen zuzuweisen, damit der Fehler später im Code eingehender untersucht werden kann. Beachten Sie auch, dass die Klammern für den dreifachen Ausnahmefall in Python 3 benötigt werden. Diese Seite enthält weitere Informationen: Mehrere Ausnahmen in einer Zeile abfangen (außer Block)
except (SomeError, OtherError):
. Beantwortet die OP-Frage nicht, kann aber einigen Leuten helfen, die über Google hierher kommen.
except Exception:
statt einfach verwenden except:
. (Plain außer wird gerade fangen SystemExit
und KeyboardInterrupt
was normalerweise nicht das ist, was Sie wollen)
e
da Sie ihm einen Namen geben :)