Concepts d'erreur et d'exception
Erreur :
1. Erreur de syntaxe : le code fait non conforme à la syntaxe de l'interpréteur ou du compilateur
2. Erreur logique : problème de saisie ou de calcul incomplet ou illégal
Exception : des milliers d'objets apparaissent pendant l'exécution, provoquant l'échec de l'exécution du programme
1. Le programme rencontre des problèmes de logique ou d'algorithme
2. Erreurs informatiques pendant le fonctionnement (mémoire insuffisante ou erreurs d'E/S)
La différence entre les erreurs et les exceptions
Erreur :
Erreur de syntaxe ou de logique avant l'exécution du code,
Les erreurs de grammaire doivent être modifiées avant l'exécution, les erreurs logiques ne peuvent pas être modifiées
Les exceptions sont divisé en deux étapes :
1. Génération d'exception, une erreur est détectée et l'interpréteur la considère comme une exception, et une exception est levée
2. Gestion des exceptions, interception des exceptions, ignorer ou ; terminer le programme pour gérer les exceptions
Erreurs courantes en Python
Erreurs courantes :
sous ipython 1. a : NameError
Référencement direct à
lorsqu'une variable n'est pas définie 2. si True : SyntaxError
Erreur de syntaxe utiliser utiliser utiliser utiliser ‐ ‐ ‐ ‐ ‐ ‐ Erreur de syntaxe > 4. 10/0 : ZeroDivisionError
5 . a = int('dd'): ValueError
Erreur rencontrée lors de l'exécution d'une conversion de type forcée
try- -sauf gestion des exceptions (1)
try-sauf : exception manipulation
try: try_suite except Exception [, e]: exception_block
1.try est utilisé pour capturer les erreurs dans try_suite et les transmettre à l'exception de la gestion
2.sauf est utilisé pour gérer les exceptions si la gestion des exceptions est cohérente avec la définition de la. exception capturée, utilisez exception_block pour gérer l'exception
Exemple :
try: a except Exception, e: print e
analyse de l'exception de capture try-sauf :
Cas 1 :
try: undef except: print 'catch an except'
Cas 2 :
try: if undef except: print 'catch an except'
cas 1 : L'exception peut être interceptée car il s'agit d'une erreur d'exécution
cas 2 : L'exception ne peut pas être interceptée car il s'agit d'une erreur de syntaxe Exécuter l'erreur précédente
<🎜. >Cas 3 :try: undef except NameError, e: print 'catch an except', e Case 4: try: undef except IOError, e: print 'catch an except', e
try: try_suite except Exception1 [e]: exception_block1 except Exception2 [e]: exception_block2 except ExceptionN [e]: exception_blockN
try: try_suite except Exception1 [e]: exception_block1 else: none_exception
try: try_suite finally: do_finally
try-sauf-finally utilise :
try: try_suite except: do_except finally: do_finally
try: try_suite except: do_except else: do_else finally: do_finally
raise et assert
instruction raise l'instruction raise est utilisée pour lancer activement des exceptionsFormat de grammaire : raise [ exception [, args]]
exception : classe d'exceptionargs : tuple décrivant les informations d'exceptionExemple :raise TypeError raise TypeError, 'Test Error' raise IOError, 'File Not Exist'
Instruction d'assertion : l'instruction assert est utilisée pour vérifier si l'expression est vraie. Si elle est fausse, une AssertionError est levée Format de grammaire : assert expression [, args]expression : expression args : informations de description. des conditions de jugement Exemple :
assert 7==6 assert 0, 'Test Error'
class FileError(IOError): pass raise FileError, 'Test FileError' class CustomError(Exception): def __init__(self, info): Exception.__init__(self) self.errorinfo = info def __str__(self): return 'CustomError: %s' % self.errorinfo try: raise CustomError('test CustomError') except CustomError, e: print 'Error Info : %s' % e
Tutoriel Python
"Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!