Search this site
Embedded Files
Mon Python pas à pas
  • Accueil
  • INSTRUCTIONS
  • METHODES
  • MODULES
  • LOGITHEQUE
Mon Python pas à pas
  • Accueil
  • INSTRUCTIONS
  • METHODES
  • MODULES
  • LOGITHEQUE
  • More
    • Accueil
    • INSTRUCTIONS
    • METHODES
    • MODULES
    • LOGITHEQUE

⇨ MENU ⇨ INSTRUCTIONS

raise

DESCRIPTION.


Lève une exception définie par le développeur si l'expression est True (vrai). 




SYNTAXE.


raise exception ( message )


raise ⇨ appel de l’instruction [ OBLIGATOIRE ]

exception ⇨ exception a lever [ OBLIGATOIRE ]

( message ) ⇨ message à retourner [ optionel ]





REMARQUES.


Si expression est True (vrai), l'instruction raise lève une exception du type précisée (par exemple : ValueError).


Si raise lève une exception, elle est traitée comme une exception normale, même si ce n'est pas vraiment le cas. Par exemple, normalement Q // 3 ne lève pas d'exception, mais avec if Q % 2 != 0 : raise ValueError, le programme gère toutes les valeurs de Q non pairs comme levant une erreur ValueError.


Le type d'exception doit être une erreur réelle traitée par Python, même si elle ne corresponds pas aux modalités de l'expression évaluée. Par exemple, raise ValueError ( "la division par 0 impossible ..." ) lève une l'erreur ValueError: la division par 0 impossible ... et pas ZeroDivisionError: integer division or modulo by zero.


Si l'exception levée par raise, se produit dans un bloc try, ou dans un appel géré par un bloc try, elle est traitée par le gestionnaire d'erreur except correspond à l'erreur à traiter, sinon Python arrête l'exécution du programme et l'interpréteur affiche le message message, entre les parenthèses.


Cela permet, par exemple, d'affiner le type des données qui seront traitée dans une fonction, pour éviter des erreurs plus profondes.




EXEMPLE.


def FNC_Demi ( Q ) :

if Q == 0 : raise ValueError ( "la division par 0 impossible ..." )

if Q < 0 : raise ValueError ( "l'argument doit être positif ..." )

if Q % 2 != 0 : raise ValueError ( "l'argument doit être un nombre pair ..." )

return Q // 2


print ( FNC_Demi ( 10 ) )

retourne 5


print ( FNC_Demi ( 0 ) )

retourne ValueError: la division par 0 impossible ...

car la condition Q == 0 est vraie


print ( FNC_Demi ( -4 ) )

retourne ValueError: l'argument doit être positif ... 

car la condition Q < 0 est vraie


print ( FNC_Demi ( 3 ) )

retourne ValueError: l'argument doit être un nombre pair ... 

car la condition Q % 2 != 0 est vraie.



Voir aussi l'instruction assert comme complément d'information.



Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de

vos remarques, vos commentaires et de vos suggestions. 

Dans la LOGITHEQUE de MON PYTHON PAS A PAS

vous trouvez des suggestions de projets simples et classiques pour

ooo

TESTER - DÉCOUVRIR - PRATIQUER - APPROFONDIR - EXPLORER

ooo

la programmation récréative avec le langage PYTHON 3

avec un exemple de résolution à télécharger pour vous inspirer.

Google Sites
Report abuse
Page details
Page updated
Google Sites
Report abuse