Von Zeit zu Zeit sehe ich in Python den Block:
try:
try_this(whatever)
except SomeException as exception:
#Handle exception
else:
return something
Was ist der Grund für die Existenz von try-except-else?
Ich mag diese Art der Programmierung nicht, da sie Ausnahmen zur Flusskontrolle verwendet. Wenn sie jedoch in der Sprache enthalten ist, muss es einen guten Grund dafür geben, nicht wahr?
Meines Erachtens sind Ausnahmen keine Fehler. und dass sie nur in Ausnahmefällen verwendet werden sollten (z. B. wenn ich versuche, eine Datei auf die Festplatte zu schreiben und kein Speicherplatz mehr vorhanden ist oder ich keine Berechtigung habe), und nicht zur Flusskontrolle.
Normalerweise behandle ich Ausnahmen wie:
something = some_default_value
try:
something = try_this(whatever)
except SomeException as exception:
#Handle exception
finally:
return something
Oder wenn ich wirklich nichts zurückgeben möchte, wenn eine Ausnahme auftritt, dann:
try:
something = try_this(whatever)
return something
except SomeException as exception:
#Handle exception