je le code python suivant:prise Python 2.6 rétrocompatible exception
try:
pr.update()
except ConfigurationException as e:
returnString=e.line+' '+e.errormsg
Cela fonctionne sous Python 2.6, mais la syntaxe "comme e" échoue dans les versions précédentes. Comment puis-je résoudre ceci? Ou, en d'autres termes, comment attraper des exceptions définies par l'utilisateur (et utiliser leurs variables d'instance) sous python 2.6. Je vous remercie!
Voir pourquoi le PEP 3110 a changé: http://www.python.org/dev/peps/pep-3110/ – Greg
La syntaxe est certainement rétrocompatible, mais elle n'est pas compatible _forward_. Ceci est invalide dans Python 3 et soulève une erreur de syntaxe. Ouais, ce n'est pas une erreur d'exécution, mais une erreur de compilation qui ne peut pas être détectée. Voir http://docs.python.org/library/sys.html#sys.exc_info et @ Mario-Ruggier's answer ci-dessous – Nathan