ho:Forzare flusso di codice per andare ad eccezione di blocco
try:
...
except Exception, e:
print "Problem. %s" % str(e)
Tuttavia, da qualche parte nel tentativo, ho bisogno di comportarsi come se fosse rilevato un'eccezione. E 'un-divinatorio da fare:
try:
...
raise Exception, 'Type 1 error'
...
except Exception, e:
print "Problem. Type 2 error %s" % str(e)
sembra una cattiva progettazione ... ma è comune a sollevare eccezioni ... ma non in genere in questo modo .. . Perché hai bisogno di fare questo? potresti voler ripensare a ciò che stai cercando di ottenere. –
La gestione delle eccezioni è generalmente progettata per catturare e gestire i guasti _unintended_. L'eccezione _raising_ serve ad avvisare i consumatori della tua funzione di un errore che ha impedito il completamento del blocco funzionale, insieme a qualsiasi informazione tu voglia fornire. Se si desidera uscire da un blocco funzionale come parte di un comportamento previsto, l'utilizzo di una funzione e dei relativi valori restituiti sarebbe un modo più appropriato per gestirlo. Detto questo, se stai provando a testare il comportamento del blocco 'except', allora sollevare un'eccezione nel' try' sarebbe il modo di farlo. –
Ma guarda l'ultima sezione del tutorial su Python: docs.python.org/tutorial/errors.html#raising-exceptions – user1008636