2010-07-25 13 views

Respuesta

9

El enfoque correcto es

xcpt.args 

Sólo el atributo message va a desaparecer. La excepción continuará existiendo y continuará teniendo argumentos.

Lea esto: http://www.python.org/dev/peps/pep-0352/ que tiene algunas razones para eliminar el atributo messages.

2

Si desea imprimir la excepción:

print "Couldn't import foo.bar.baz: %s" % xcpt 

excepciones tienen un método __str__ definido para crear una versión legible de sí mismos. No me molestaría con "Error de importación:" ya que la excepción lo proporcionará. Si agrega texto a la excepción, haga que sea algo que conozca basado en el código que estaba tratando de ejecutar.

+0

Cuando lo hago print xcpt, obtengo "Ningún módulo llamado tribes.models" que no me da el título de la excepción, aunque esté implícito en el mensaje. – boatcoder

Cuestiones relacionadas