cookie: (PYTHON) Exception in __init__ - Objekt erzeugt oder nicht?

Beitrag lesen

Hallo,

danke für Deine Antwort.

Der Code, der eventuell auf die gesamte try-(except-else-finally)-Konstruktion folgt, wird dann ausgeführt, wenn keine Ausnahme ausgelöst worden ist oder die Ausnahme erfolgreich behandelt wurde.

Das Behandeln der Exception ist nebensächlich. Hauptsache ist, dass sie erfolgreich gefangen wurde (und nicht erneut oder irgendeine andere ausgelöst wurde).

Was ist der Unterschied zwischen behandeln und fangen?

Ich verstehe Dich jetzt folgendermaßen:

* behandeln: nach der Ausnahme im except-Block etwas Sinnvolles im Hinblick auf die Programmlogik tun

* fangen: Für die Ausnahme gibt es einen zugehörigen except-Block, der ausgeführt wird, womit die Ausnahme formal als erledigt betrachtet wird. Ob in diesem Block sinnvolle Programmanweisungen stehen, ist dabei unerheblich

Wenn also durch eine Ausnahme der except-Block ausgeführt wird (und eventuell danach ein finally-Block) dann wird anschließend der Code ausgeführt, der auf die gesamte try-(except-else-finally)-Konstruktion folgt - natürlich nur sofern bis dahin nicht wieder neue Ausnahmen ausgelöst worden sind.

Viele Grüße
cookie