Easier to Ask Forgiveness than Permission
Tiene sentido su uso cuando el sistema donde se trabaja puede cambiar. El intentar realizar una operación y que todo funcione, es rápido, aunque tengamos que considerar la presencia de errores para los casos de fallos. Pero si realizamos una comprobación antes y cuando vayamos a realizar la operación el entorno ha cambiado aparecerá un error y habremos perdido el tiempo.
Un ejemplo sencillo es una función de división que realiza la división primero, y si hay algún error este se controla a posteriori.
def divide(x, y):
try:
return x/y
except ZeroDivisionError:
print ("Error en división por cero")
return None