Maison >développement back-end >Tutoriel Python >Comment puis-je intercepter plusieurs exceptions dans un seul bloc Python « except » ?
Détecter plusieurs exceptions sur une seule ligne avec le bloc Sauf de Python
En Python, vous pouvez capturer une variété d'exceptions à l'aide du bloc « sauf » . Traditionnellement, la gestion de plusieurs exceptions impliquait l'utilisation de plusieurs clauses « sauf » individuelles :
try: # Code that may fail except IDontLikeYouException: # Handle IDontLikeYouException except YouAreTooShortException: # Handle YouAreTooShortException
Cependant, si vous devez gérer la même exception en réponse à plusieurs autres exceptions, il existe une approche plus concise.
Détecter plusieurs exceptions avec un tuple
En regroupant les exceptions dans un tuple, vous pouvez gérer leurs occurrences dans un seul bloc 'sauf' :
try: # Code that may fail except (IDontLikeYouException, YouAreBeingMeanException) as e: # Handle both exceptions
Dans ce code, le tuple '(IDontLikeYouException, YouAreBeingMeanException)' spécifie que le bloc 'sauf' s'exécutera si l'une de ces exceptions est levée.
Exemple d'utilisation
Considérez le code ci-dessous :
def say_please(): print("Please...") try: raise IDontLikeYouException() except (IDontLikeYouException, YouAreBeingMeanException): say_please()
Lorsque la fonction 'say_please()' est appelée dans le bloc 'sauf', elle affiche "S'il vous plaît...". Cela montre comment la gestion de plusieurs exceptions à l'aide d'un tuple simplifie la gestion des exceptions.
Remarque pour Python 2
Dans Python 2, vous pouvez éventuellement inclure un nom de variable après la parenthèse fermante. du tuple, mais il n'est pas obligatoire et obsolète dans Python 3. Utilisez plutôt « as » pour lier l'objet d'exception à un variable :
try: # Code that may fail except (IDontLikeYouException, YouAreBeingMeanException) as e: # Handle both 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!