2010-10-23 7 views
2

Est-ce que python 2.5 vous permet de passer des arguments d'exception?Comment imprimer des arguments Python 2.5 Exception?

try: raise Exception("argument here") 
except Exception: print Exception.args 

Je n'ai pas eu de chance avec le code ci-dessus - je sais que c'est comment vous le faites en Python 2.7 - est-ce pas en Python 2.5?

Répondre

4

Vous n'êtes pas en train de lever l'exception, juste en la créant. Une fois que vous avez corrigé cela, vous devez également vous référer à l'instance qui est levée, pas seulement la classe Exception:

>>> try: 
...  raise Exception('foo', 23) 
... except Exception, e: 
...  print e.args 
... 
('foo', 23) 
+0

Je ne comprends pas cela. J'obtiens: ehfeng

+0

Aussi, quand j'essaie votre suggestion, comme je "syntaxerror: syntaxe invalide" sur le mot-clé "as". – ehfeng

+0

J'utilise Python 2.6. Il semble avoir changé depuis 2.5, ce qui m'a plus que surpris. J'ai modifié la réponse. –