Maison > développement back-end > Tutoriel Python > Jouez facilement avec la gestion des exceptions Python et dites adieu au cauchemar des échecs de code

Jouez facilement avec la gestion des exceptions Python et dites adieu au cauchemar des échecs de code

PHPz
Libérer: 2024-02-25 16:10:13
avant
558 Les gens l'ont consulté

轻松玩转 Python 异常处理,告别代码故障的噩梦

1. Exceptions et leurs types

Dans python, les exceptions font référence aux erreurs ou problèmes rencontrés lors de l'exécution du programme. Les exceptions peuvent être causées par diverses raisons, notamment des erreurs de syntaxe dans le code, des erreurs d'exécution, des erreurs de mémoire, des erreurs d'entrée/sortie, etc. Python possède de nombreuses classes d'exceptions intégrées pour représenter différents types d'erreurs. Par exemple :

  • SyntaxError : Il y a une erreur de syntaxe dans le code.
  • TypeError : Incompatibilité de type de données.
  • ValueError : La fonction ou la méthode a des paramètres incorrects.
  • IndexError : Index de liste ou de tuple hors limites.
  • KeyError : La clé spécifiée n'existe pas dans le dictionnaire.

2. Déclarations de gestion des exceptions

Il existe trois types d'instructions de gestion des exceptions en Python : try/sauf/finally. Ils peuvent être utilisés pour détecter et gérer les exceptions.

  • try : Le bloc try est utilisé pour exécuter du code pouvant lever une exception.
  • sauf : le bloc d'instruction except est utilisé pour intercepter et gérer les exceptions.
  • finally :  Le bloc d'instructions final est utilisé pour le code qui est exécuté après l'exécution du bloc d'instructions try/sauf.

Exemple :

try:
# 可能会引发异常的代码
except Exception as e:
# 捕获并处理异常
print("An exception occurred:", e)
finally:
# 无论是否发生异常,都会执行的代码
print("Finally block executed.")
Copier après la connexion

3. Détecter et gérer les exceptions

Pour intercepter et gérer les exceptions, vous pouvez utiliser des blocs d'instructions try/sauf. Le bloc try est utilisé pour exécuter du code susceptible de lever une exception, et le bloc except est utilisé pour intercepter et gérer les exceptions.

Exemple :

try:
# 可能会引发 TypeError 的代码
x = int("abc")
except TypeError as e:
# 捕获并处理 TypeError 异常
print("TypeError occurred:", e)
Copier après la connexion

4. Jetez une exception

Des exceptions peuvent être levées à l'aide de l'instruction raise. L'instruction raise lève explicitement une exception afin qu'elle puisse être interceptée et gérée au moment approprié dans le programme.

Exemple :

def divide(a, b):
if b == 0:
raise ValueError("Cannot divide by zero.")
return a / b

try:
result = divide(10, 0)
except ValueError as e:
print("ValueError occurred:", e)
Copier après la connexion

5. Exception personnalisée

Python nous permet de personnaliser les classes d'exceptions pour fournir des informations plus détaillées sur des types d'erreurs spécifiques. Les classes d'exception personnalisées peuvent hériter de la classe Exception intégrée.

Exemple :

class MyError(Exception):
pass

try:
# 可能会引发 MyError 的代码
raise MyError("This is a custom error message.")
except MyError as e:
print("MyError occurred:", e)
Copier après la connexion

Résumé

La gestion des exceptions Python fait partie intégrante de la programmation Elle peut nous aider à gérer les erreurs dans le code avec élégance et à éviter les plantages du programme. Cet article présente les bases de la gestion des exceptions Python et montre, via du code de démonstration, comment l'utiliser pour intercepter et gérer les exceptions.

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!

source:lsjlt.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