J'ai lu la définition officielle de "augmenter", mais je ne comprends toujours pas ce que cela signifie.
En termes simples, qu'est-ce que "augmenter"?
Un exemple d'utilisation aiderait.
Il a 2 buts.
Il est utilisé pour élever vos propres erreurs.
if something: raise Exception('My error!')
La seconde consiste à relancer l'exception actuelle dans un gestionnaire d'exceptions, afin qu'elle puisse être traitée plus loin dans la pile d'appels.
try:
generate_exception()
except SomeException as e:
if not can_handle(e):
raise
handle_exception(e)
Il est utilisé pour relancer des erreurs.
if something:
raise Exception('My error!')
Quelques exemples ici
raise
sans aucun argument est une utilisation particulière de la syntaxe python. Cela signifie obtenir l'exception et la relancer. Si cet usage avait été appelé reraise
.
raise
From Le Python Référence du langage :
Si aucune expression n'est présente, raise relance la dernière exception active dans l'étendue actuelle.
Si raise
est utilisé seul sans aucun argument, il est strictement utilisé pour relancer - ing. Si cela est fait dans une situation qui ne déclenche pas une autre exception, l'erreur suivante s'affiche: RuntimeError: No active exception to reraise
Outre raise Exception("message")
et raise
Python 3 a introduit un nouveau formulaire, raise Exception("message") from e
. C'est ce qu'on appelle le chaînage des exceptions, il vous permet de conserver l'exception d'origine (la cause première) avec son suivi.
Cela ressemble beaucoup aux exceptions internes de C #.
Plus d'infos: https://www.python.org/dev/peps/pep-3134/
raise
provoque une exception. D'autres langues utilisent le verbe 'jeter' à la place.
Il est destiné à signaler une situation d'erreur. il signale que la situation est exceptionnelle par rapport au flux normal.
Les exceptions levées peuvent être capturées à nouveau par le code "en amont" (un bloc environnant ou une fonction plus tôt sur la pile) pour le gérer, en utilisant une combinaison try
, except
.
Vous pouvez l'utiliser pour générer des erreurs dans le cadre de la vérification des erreurs:
if (a < b):
raise ValueError()
Ou gérez certaines erreurs, puis transmettez-les dans le cadre du traitement des erreurs:
try:
f = open('file.txt', 'r')
except IOError:
# do some processing here
# and then pass the error on
raise