Maison  >  Article  >  développement back-end  >  Gestion des exceptions en python (exemple de code)

Gestion des exceptions en python (exemple de code)

不言
不言avant
2019-01-25 10:02:472453parcourir

Le contenu de cet article concerne la gestion des exceptions (exemples de code) en python. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Lorsque nous pensons qu'un code peut mal tourner, nous pouvons essayer d'exécuter ce code. Si une erreur se produit, le code suivant ne continuera pas à s'exécuter, mais passera directement au code de gestion des erreurs. est un bloc d'instructions except, après l'exécution de except, s'il existe un bloc d'instructions final, le bloc d'instructions final sera exécuté à ce stade, l'exécution est terminée.

L'instruction try de Python a deux styles

  1. Gestion des exceptions (try/sauf/else)

  2. Le premier est que le dernier code (try/finally) sera exécuté indépendamment du fait qu'une exception se produise ou non

style try/sauf/else

try:
    <语句> #运行别的代码
except <名字>: 
    <语句> #如果在try部份引发了&#39;name&#39;异常
except <名字>,<数据>:
    <语句> #如果引发了&#39;name&#39;异常,获得附加的数据
else:
    <语句> #如果没有异常发生

Le principe de fonctionnement de try est qu'après avoir démarré une instruction try, Python marque le contexte du programme en cours afin que vous puissiez revenir ici lorsqu'une exception se produit. La clause try est exécutée en premier, et ce qui se passe ensuite dépend du temps d'exécution. . Si une exception se produit.
1. Si une exception se produit lors de l'exécution de l'instruction après try, python reviendra en arrière pour essayer d'exécuter la première clause except correspondant à l'exception. Une fois l'exception traitée, le flux de contrôle passera par l'intégralité de l'instruction try (. sauf si le traitement Une nouvelle exception est levée lorsqu'une exception se produit).
2. Si une exception se produit dans l'instruction après try, mais qu'il n'y a pas de clause except correspondante, l'exception sera soumise au try supérieur ou au niveau supérieur du programme (cela mettra fin au programme et imprimera le message d'erreur par défaut).
3. Si aucune exception ne se produit lorsque la clause try est exécutée, python exécutera l'instruction après l'instruction else (s'il y en a une autre), puis le flux de contrôle passera par l'intégralité de l'instruction try.

style try/finally

try:
    <语句>
finally:
    <语句> #退出try时总会执行finally语句

Python exécutera toujours la clause finale, qu'une exception soit levée ou non lors de l'exécution de la clause try.
1. Si aucune exception ne se produit, python exécute la clause try, puis la clause enfin, puis continue.
2. Si une exception se produit dans la clause try, Python reviendra pour exécuter la clause enfin, puis soumettra l'exception au try supérieur Le flux de contrôle ne passera pas par l'intégralité de l'instruction try .

try/finally est utile lorsque vous souhaitez vous assurer que certains codes sont exécutés, qu'une exception se produise ou non.

C'est utile lors de l'ouverture d'un fichier, enfin toujours fermer() le fichier à la fin

try clause clause form table

sauf : catch all exceptions
sauf nom : catch uniquement Exceptions spécifiques
sauf nom, valeur : interceptez l'exception et ses données jointes (enregistrez les informations sur l'exception dans la valeur,)
sauf (nom1, nom2) : interceptez toutes les exceptions répertoriées
sinon : si aucune exception
finalement : toujours exécuté

try:
   f = open(&#39;file.txt&#39;)
except IOError as e:
   print e
else:
   print &#39;wrong&#39;
[Errno 2] No such file or directory: &#39;file.txt&#39;
essayer/sauf/finalement :

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer