Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich mehrere Ausnahmen in einem einzelnen Python-„Exception'-Block abfangen?

Wie kann ich mehrere Ausnahmen in einem einzelnen Python-„Exception'-Block abfangen?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-03 12:46:11919Durchsuche

How Can I Catch Multiple Exceptions in a Single Python `except` Block?

Mehrere Ausnahmen in einer Zeile mit dem Except-Block von Python abfangen

In Python können Sie eine Vielzahl von Ausnahmen mithilfe des „Exception“-Blocks erfassen . Traditionell umfasste die Behandlung mehrerer Ausnahmen die Verwendung mehrerer einzelner „Exception“-Klauseln:

try:
    # Code that may fail
except IDontLikeYouException:
    # Handle IDontLikeYouException
except YouAreTooShortException:
    # Handle YouAreTooShortException

Wenn Sie jedoch dieselbe Ausnahme als Reaktion auf mehrere andere Ausnahmen behandeln müssen, gibt es einen prägnanteren Ansatz.

Mehrere Ausnahmen mit einem Tupel abfangen

Indem Sie Ausnahmen in einem Tupel gruppieren, können Sie deren Vorkommen behandeln in einem einzelnen „Exception“-Block:

try:
    # Code that may fail
except (IDontLikeYouException, YouAreBeingMeanException) as e:
    # Handle both exceptions

In diesem Code gibt das Tupel „(IDontLikeYouException, YouAreBeingMeanException)“ an, dass der „Exception“-Block ausgeführt wird, wenn eine dieser Ausnahmen ausgelöst wird.

Beispielverwendung

Bedenken Sie den Code unten:

def say_please():
    print("Please...")

try:
    raise IDontLikeYouException()
except (IDontLikeYouException, YouAreBeingMeanException):
    say_please()

Wenn die Funktion „say_please()“ im Block „exclusive“ aufgerufen wird, wird „Please…“ ausgegeben. Dies zeigt, wie die Behandlung mehrerer Ausnahmen mithilfe eines Tupels die Ausnahmebehandlung vereinfacht.

Hinweis für Python 2

In Python 2 können Sie optional einen Variablennamen nach der schließenden Klammer einfügen des Tupels, aber es ist nicht erforderlich und in Python 3 veraltet. Verwenden Sie stattdessen „as“, um das Ausnahmeobjekt an a zu binden Variable:

try:
    # Code that may fail
except (IDontLikeYouException, YouAreBeingMeanException) as e:
    # Handle both exceptions

Das obige ist der detaillierte Inhalt vonWie kann ich mehrere Ausnahmen in einem einzelnen Python-„Exception'-Block abfangen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn