Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Challenge: Verkettete Fehlerbehandlung | Comprehensive Error Handling
Python Fortgeschrittene Konzepte
Abschnitt 1. Kapitel 7
single

single

Challenge: Verkettete Fehlerbehandlung

Swipe um das Menü anzuzeigen

Ausnahmeverkettung und erneutes Auslösen von Ausnahmen sind grundlegende Fähigkeiten für die Entwicklung zuverlässiger Python-Programme. Wenn eine Ausnahme abgefangen und eine neue signalisiert werden soll, kann es sinnvoll sein, den ursprünglichen Fehlerkontext zu bewahren. Die Ausnahmeverkettung ermöglicht dies und liefert einen vollständigen Traceback, der bei der Fehlersuche unterstützt. Das erneute Auslösen von Ausnahmen stellt sicher, dass Fehler nicht unbemerkt bleiben, wodurch der Code robuster und wartungsfreundlicher wird. Die Anwendung dieser Konzepte ermöglicht eine transparente und nachvollziehbare Fehlerbehandlung in Anwendungen.

Aufgabe

Wischen, um mit dem Codieren zu beginnen

Schreiben Sie eine Funktion safe_int_divide(a, b), die a durch b teilt und das Ergebnis als Ganzzahl zurückgibt. Wenn b null ist, fangen Sie ZeroDivisionError ab, werfen Sie ValueError mit der Nachricht "Cannot divide by zero" und verketten Sie die ursprüngliche Ausnahme. Tritt während der Division eine andere Ausnahme auf, geben Sie diese unverändert weiter.

  • Die Funktion muss:
    • Das Ergebnis der Ganzzahldivision (a // b) zurückgeben, wenn sie erfolgreich ist.
    • Eine ValueError("Cannot divide by zero") auslösen, die von der ZeroDivisionError-Ausnahme verkettet ist.
    • Alle anderen Ausnahmen unverändert weitergeben.
  • Es darf nichts ausgegeben werden.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 7
single

single

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

some-alt