Ne pas arreter lors des exceptions

Ne pas arreter lors des exceptions - Python - Programmation

Marsh Posté le 03-05-2007 à 17:15:56    

Bonjour,
Je voudrais faire un programme et j'aimerais qu'il ne s'arrete pas lors de la rencontre d'une exception mais qu'il l'affiche simplement.
 
J'ai donc :
 
try :
  TRUC qui plante souvent mais c'est pas grave
except :
  print "j'ai une erreur"
 
mais j'aimerai qu'à l'affichage, j'ai :
- le type d'exception
- le message détaillé de l'exception
 
Comment faire ?
 
J'ai trouvé sur la doc qu'il faut mettre "except Exception,detail", mais comment faire quand on ne connait pas le nom de l'exception ?
 
Merci,
 
Axel

Reply

Marsh Posté le 03-05-2007 à 17:15:56   

Reply

Marsh Posté le 03-05-2007 à 17:27:23    

Code :
  1. try :
  2.  TRUC qui plante souvent mais c'est pas grave
  3. except Exception, e:
  4.  print "j'ai une erreur : " + str(e)


 
toutes les exceptions hérites de Exception, donc tu peux tout catcher avec Exception


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 04-05-2007 à 09:02:29    

il ne le catche pas, voici ce que j'obtiens :
 

Code :
  1. Traceback (most recent call last):
  2.   File "D:\Python24\code\refer\refer.py", line 40, in ?
  3.     dbRes.execute(dbReq)
  4. dbi.operation-error: [IDI][BASIS ODBC-SQL Driver][OpenAPI] Un article avec la mÛ
  5. me clÚ unique existe dÚjÓ,  cet article ne peut Ûtre ajoutÚ dans la Table (ADD).
  6. {NUM_REF} in EXEC


 
le nom de l'exception en elle même me parait étrange "dbi.operation-error"...

Reply

Marsh Posté le 04-05-2007 à 12:44:37    

parce que ça n'hérite pas d'Exception. Ouvre ta doc et regarde quel type catcher


Message édité par Taz le 04-05-2007 à 12:44:45
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed