tengo:Forzando el flujo de código para ir a excepto de bloques
try:
...
except Exception, e:
print "Problem. %s" % str(e)
Sin embargo, en algún lugar de intentarlo, necesitaré que se comporte como si se ha encontrado una excepción. ¿Es antipático hacer:
try:
...
raise Exception, 'Type 1 error'
...
except Exception, e:
print "Problem. Type 2 error %s" % str(e)
parece un mal diseño ... pero es común levantar Excepciones ... pero no de esta manera ... . ¿Por qué necesitas hacer esto? Es posible que desee volver a pensar en lo que está tratando de lograr –
El manejo de excepciones generalmente está diseñado para atrapar y manejar _unintended_ failures. Exception _raising_ es para alertar a los consumidores de su función de un error que impidió completar el bloqueo funcional, junto con la información que desee proporcionar. Si solo desea salir de un bloque funcional como parte de un comportamiento previsto, usar una función y sus valores de retorno sería una forma más adecuada de manejar eso. Dicho esto, si intentas probar el comportamiento del bloque 'except', entonces plantear una excepción en' try' sería la forma de hacerlo. –
Pero mira la última sección del tutorial de python: docs.python.org/tutorial/errors.html#raising-exceptions – user1008636