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

Gestion des exceptions en python (exemple de code)

不言
Libérer: 2019-01-25 10:02:47
avant
2472 Les gens l'ont consulté

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:
    <语句> #如果没有异常发生
Copier après la connexion

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语句
Copier après la connexion

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;
Copier après la connexion
[Errno 2] No such file or directory: &#39;file.txt&#39;
Copier après la connexion
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!

Étiquettes associées:
source:cnblogs.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal