Table des matières:
- 1Ouvrez une fenêtre de fichier Python.
- 2Tapez le code suivant dans la fenêtre en appuyant sur Entrée après chaque ligne:
- Vous voyez une fenêtre Python Shell ouverte. L'application demande à l'utilisateur d'entrer un nombre entier.
- L'application affiche un message d'erreur et vous demande si vous souhaitez réessayer.
- L'application vous demande de saisir à nouveau un nombre entier.
- L'application affiche à nouveau le message d'erreur et vous demande si vous souhaitez réessayer.
- L'application se termine. Notez que le message est celui de l'exception interne. L'application ne parvient jamais à l'exception externe, car le gestionnaire d'exceptions interne fournit une gestion générique des exceptions.
- Vous voyez une fenêtre Python Shell ouverte. L'application demande à l'utilisateur d'entrer un nombre entier.
- L'application se termine. Notez que le message est celui de l'exception externe. Dans les étapes précédentes, l'utilisateur termine l'application en appuyant sur une touche d'interruption. Toutefois, l'application utilise deux gestionnaires d'exceptions différents pour résoudre le problème.
Vidéo: From C to Python by Ross Rheingans-Yoo 2025
Parfois, vous devez placer une routine de gestion des exceptions dans une autre dans un processus appelé imbrication. Lorsque vous imbriquez des routines de gestion des exceptions, Python essaie d'abord de trouver un gestionnaire d'exceptions dans le niveau imbriqué, puis se déplace vers les couches externes. Vous pouvez imbriquer les routines de gestion des exceptions aussi profondément que nécessaire pour sécuriser votre code.
L'une des raisons les plus courantes d'utiliser une double couche de code de gestion des exceptions est lorsque vous voulez obtenir des entrées d'un utilisateur et que vous devez placer le code d'entrée dans une boucle pour vous assurer que vous obtenez les informations requises. Les étapes suivantes montrent comment ce type de code peut fonctionner.
1Ouvrez une fenêtre de fichier Python.
Vous voyez un éditeur dans lequel vous pouvez taper l'exemple de code.
2Tapez le code suivant dans la fenêtre en appuyant sur Entrée après chaque ligne:
TryAgain = True pendant TryAgain: essayez: Value = int (entrée ("Tapez un nombre entier.")) Sauf ValueError: print ("Vous doit taper un nombre entier! ") try: DoOver = input (" Réessayer (y / n)? ") sauf: print (" OK, à la prochaine! ") TryAgain = False else: if (str. DoOver) = TryAgain = False sauf KeyboardInterrupt: print ("Vous avez appuyé sur Ctrl + C!") Print ("A la prochaine!") TryAgain = False else: print (Valeur) TryAgain = False > Le code commence par créer une boucle d'entrée. L'utilisation de boucles pour ce type de fonction est en fait assez courante dans les applications car vous ne voulez pas que l'application se termine chaque fois qu'une erreur de saisie est effectuée. C'est une boucle simplifiée, et normalement vous créez une fonction séparée pour contenir le code.
Une exception ValueError peut survenir lorsque l'utilisateur fait une erreur. Parce que vous ne savez pas pourquoi l'utilisateur a entré la mauvaise valeur, vous devez demander si l'utilisateur veut réessayer. Bien sûr, obtenir plus d'informations de l'utilisateur pourrait générer une autre exception. Le try interne … sauf le bloc de code gère cette entrée secondaire.
3Choisissez Exécuter → Exécuter le module.
Vous voyez une fenêtre Python Shell ouverte. L'application demande à l'utilisateur d'entrer un nombre entier.
L'application affiche un message d'erreur et vous demande si vous souhaitez réessayer.
5Type Y et appuyez sur Entrée.
L'application vous demande de saisir à nouveau un nombre entier.
6Tapez 5. 5 et appuyez sur Entrée.
L'application affiche à nouveau le message d'erreur et vous demande si vous souhaitez réessayer.
L'application se termine. Notez que le message est celui de l'exception interne. L'application ne parvient jamais à l'exception externe, car le gestionnaire d'exceptions interne fournit une gestion générique des exceptions.
8Choisissez Exécuter → Exécuter le module.
Vous voyez une fenêtre Python Shell ouverte. L'application demande à l'utilisateur d'entrer un nombre entier.
9Appuyez sur Ctrl + C, Cmd + C ou une autre combinaison de touches pour interrompre l'application.
L'application se termine. Notez que le message est celui de l'exception externe. Dans les étapes précédentes, l'utilisateur termine l'application en appuyant sur une touche d'interruption. Toutefois, l'application utilise deux gestionnaires d'exceptions différents pour résoudre le problème.
