Attrapez toutes les exceptions en Python

Manav Narula 10 octobre 2023
  1. Utilisez la classe Exception pour intercepter toutes les exceptions en Python
  2. Utilisez la classe BaseException pour intercepter toutes les exceptions en Python
Attrapez toutes les exceptions en Python

Nous utilisons les blocs try et except pour traiter les exceptions. Le bloc try contient du code qui peut déclencher une exception. Si une exception est levée, alors nous pouvons spécifier le code alternatif dans le bloc except qui peut être exécuté. Nous savons que nous avons différents types d’exceptions en Python pour avoir plusieurs instructions except pour différentes exceptions.

Par example,

try:
    raise ValueError()
except ValueError:
    print("Value Error")
except KeyError:
    print("Key Error")

Production:

Value Error

Cependant, parfois, nous pouvons vouloir un bloc général except qui peut intercepter toutes les exceptions. C’est très simple à mettre en œuvre. Si nous ne mentionnons aucune exception spécifique dans le bloc except, alors il attrape toute exception qui pourrait se produire.

Le code suivant implémente cela.

try:
    # Your
    # Code
    pass
except:
    print("Exception Encountered")

Cependant, il n’est pas conseillé d’utiliser cette méthode car elle intercepte également des exceptions comme KeyBoardInterrupt, et SystemExit, que l’on veut généralement ignorer.

Utilisez la classe Exception pour intercepter toutes les exceptions en Python

Nous pouvons éviter les erreurs mentionnées ci-dessus en attrapant simplement la classe Exception. Toutes les exceptions intégrées, qui ne sortent pas du système, ainsi que les exceptions définies par l’utilisateur, sont généralement dérivées de cette classe.

Par example,

try:
    # Your
    # Code
    pass
except Exception as e:
    print("Exception Encountered")

Utilisez la classe BaseException pour intercepter toutes les exceptions en Python

Il convient de noter que même la méthode ci-dessus peut omettre certaines exceptions. Nous pouvons également utiliser la classe BaseException, qui se trouve en haut de la hiérarchie. Il peut être nécessaire dans certains cas, et nous pouvons voir son utilisation dans le code suivant.

try:
    # Your
    # Code
    pass
except BaseException as e:
    print("Exception Encountered")

Dans ce didacticiel, nous avons discuté de quelques méthodes, qui peuvent ne pas être parfaites, mais peuvent intercepter la plupart des exceptions soulevées. En général, il n’est pas conseillé d’attraper toutes les exceptions, alors soyez prudent dans la méthode que vous choisissez d’utiliser.

Auteur: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Article connexe - Python Exception