LE LANGAGE PYTHON Enseignante : Leïla HAMMAMI EL FEKIH Contact : hammamif.laila

LE LANGAGE PYTHON Enseignante : Leïla HAMMAMI EL FEKIH Contact : hammamif.laila@yahoo.com Année universitaire 2020/2021 Module : Informatique Classes: 1èreS années MP – PC –T CONTRÔLE CONTRÔLE DU FLUX DU FLUX D’ INSTRUCTIONS D’ INSTRUCTIONS hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 2LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Rappel d’un programme Python Les Structures Conditionnelles Les Expressions Conditionnelles Les Structures Itératives Conditionnelles Non conditionnelles Gestion des erreurs Plan Plan hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 3LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Un programme Python est composé d'instructions. Une instruction, simple ou composée, est un ordre unitaire donné à l‟interpréteur :  Instruction simple : print(„Bonjour‟) ; x=20  Instruction composée ou bloc d‟instructions : structure if, boucles for ou while, fonctions définies par def, etc. Une Instruction composée est formée d'une : ligne d‟entête se terminant obligatoirement par «:» qui signifie l‟ouverture d‟un nouveau bloc après retour à la ligne Il n’y a pas de début et de fin de bloc explicites en python, comme begin ou end  suite d'instructions automatiquement indentées (alignées sur une même tabulation) appelée encore bloc d'instructions. L‟indentation ? décalage à droite d‟un même nombre d‟espaces (ou tabulation). Programme Python (1) hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 4LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN La fin d‟un bloc de niveau n (retour au bloc de niveau n-1) est obtenue par un “effacement arrière” après retour à la ligne. Les instructions sont séparées dans un programme par: un point-virgule « ; » si plusieurs instructions sur une même ligne un retour à la ligne si une instruction par ligne. Ce qui suit le « # » est un commentaire jusqu'à la fin de la ligne. L'interpréteur Python analyse les lignes du script une à une : si la ligne est une instruction simple (ou une séquence d‟instructions simples séparées par des « ; »), alors il l'analyse, l'exécute et passe à la ligne d‟après. si la ligne est une ligne d‟entête d‟une instruction de contrôle (bloc), alors l‟analyse et l‟exécution s‟applique aux instructions du bloc indenté. Une fois le bloc exécuté, l'analyse et l'exécution reprennent à l‟instruction qui suit la ligne d‟entête du bloc, en appliquant le même principe, et ainsi de suite jusqu‟à arriver à la fin du programme. Programme Python (2) hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 5LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN L‟exécution d‟un programme Python se déroule comme suit. L'interpréteur Python commence par analyser les lignes du script une à une : si la ligne est une instruction simple (ou une séquence d‟instructions simples séparées par des « ; »), alors il l'analyse, l'exécute et passe à la ligne d‟après. si la ligne est une ligne d‟entête d‟une instruction de contrôle (bloc), alors l‟analyse et l‟exécution s‟applique aux instructions du bloc indenté. Une fois le bloc exécuté, l'analyse et l'exécution reprennent à l‟instruction qui suit la ligne d‟entête du bloc, en appliquant le même principe, et ainsi de suite jusqu‟à arriver à la fin du programme. Exécution d'un Programme Python hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 6LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Structure Conditionnelle : Mots Réservés # Si # Sinon # Sinon Si Opérateur d'appartenance in dans un itérable Opérateur d'appartenance in dans un itérable hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 7LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Syntaxe Structure conditionnelle (1) if condition1 : instruction 11 … instruction 1p elif condition2 : instruction 21 … instruction 2q … elif conditionn-1: instruction n-1 else: instruction n Syntaxe générale : True False True False False True hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 8LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Syntaxe Structure conditionnelle (2) Syntaxe sans elif/else: if condition : instruction 1 … instruction n Syntaxe avec else: if condition : instruction 11 … instruction 1p else: instruction 21 … instruction 2n L‟en-tête du bloc (if, elif, else) se termine par « : ». Les elif (else if) et le else sont optionnels. Les instructions peuvent à leurs tours être des structures conditionnelles. Exemple : if a%2 == 0 : print ('a={} est pair'.format(a)) if a%3 == 0 : print(' et est multiple de 3') else : print ('et non multiple de3') else : print ('a={} impair'.format(a)) hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 9LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Syntaxe Structure conditionnelle (3) Syntaxe avec elif/else: if condition1 : instructions 1 elif condition2 : instructions 2 … elif condition n-1: instructions n-1 else: instructions n Attention à l’indentation !!! toutes les instructions d‟un même bloc doivent être indentées exactement au même niveau. L‟irrespect de l‟indentation génère une erreur. Les valeurs considérées comme False pour la condition sont : – évidemment la valeur False, – la constante None, – toute valeur numérique égale à 0 (0, 0.0, 0j), – les chaînes, listes, tuples, ensembles et dictionnaires vides. hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 10LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Syntaxe Structure conditionnelle (4) Une condition est une expression logique qui peut contenir : des opérateurs relationnels (==, !=, <, <=, >, >=); Exemple: if x==0: if x : # if x != 0 : if a != "" : # if a : l‟opérateur unaire not. Exemple: if not a : # donne True si a est False et donne False sinon une combinaison d'opérateurs relationnels et d'opérateurs logiques (and, or, not, …). Exemple : if x>y and y>=z:  # ou encore if x>y>=z : l‟opérateur in. Exemple : if 't„ in "toto": print ('ok') hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 11LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Structure Conditionnelle Structure Conditionnelle Application ( Application (1) Ecrire un programme Python qui : saisit trois entiers a, b et c, résout dans l‟ensemble C l‟équation du second degré ax2+bx+c= 0 On discutera tous les cas possibles pour a, b et c. hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 12LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Travail à faire Structure Conditionnelle Structure Conditionnelle Application Application (2) (2) hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 13LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Python offre la possibilité de former des expressions dont l‟évaluation est soumise à une condition et dont la syntaxe est: Le résultat est l‟évaluation de expression1 si la condition est vraie, et celle de expression2 sinon. Cette construction ne permet pas l‟utilisation du mot réservé elif mais on peut emboîter deux expressions conditionnelles. Expressions Conditionnelles (1) Expressions Conditionnelles (1) Expression_1 if condition else Expression_2 Expression_1 if condition1 else Expression_2 if condition2 else Expression_3 hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 14LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Récrire l'exemple suivant avec une expression conditionnelle si c'est possible, et justifiez votre réponse dans le cas contraire en proposant éventuellement une solution : Application :Expressions Application :Expressions Conditionnelles ( Conditionnelles (3) if a%2 == 0 : print ('a={} est pair'.format(a)) if a%3 == 0 : print(' et est multiple de 3') else : print ('et non multiple de3') else : print ('a={} impair'.format(a)) hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 15LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Travail à faire Application :Expressions Application :Expressions Conditionnelles ( Conditionnelles (3) hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 16LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Structure Itérative/Répétitive Conditionnelle Boucle while (Tantque et Repeter en algorithmique) Structure Itérative/Répétitive NON Conditionnelle Boucle for avec un index numérique entier (Pour en algorithmique) utilisation de la fonction range (…) pour définir un intervalle donné Boucles for pour parcourir un objet itérable. Structure Structure Répétitive/Itérative Répétitive/Itérative hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 17LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Structure Répétitive/Itérative Structure Répétitive/Itérative Mots réservés Mots réservés Boucles for while continue break else in boucle non conditionnelle boucle conditionnelle interruption de l’itération et passage à l’itération suivante sans poursuivre l'exécution des instructions qui suivent continue (si elles existent) sortie de boucle traitement associé exécuté lorsque : - condition d'exécution avec while non vérifiée - épuisement de l'itérable avec for à condition de ne pas quitter la boucle avec break dans un itérable hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 18LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Syntaxe générale Boucle conditionnelle : while (1) Initialisation while else Initialisation while condition : bloc_instructions_Si_condition_Vraie else : bloc_instructions_Si_condition_Fausse Si condition fausse dès le départ, le bloc bloc qui suit l‟instruction d‟en-tête while n‟est jamais exécuté. Le bloc qui suit l‟instruction d‟en-tête while agit sur la condition, True au départ, de sorte qu'elle devienne False à une itération donnée et provoque la sortie de la boucle. le bloc qui suit else est exécuté lorsque la boucle while se termine (condition devient (ou est) fausse) à condition que la boucle ne soit pas interrompue par l'instruction break. hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - Dia 19LEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEINLEILA HAMMAMILEILA HAMMAMI@IPEIN@IPEIN Syntaxe générale Boucle conditionnelle : while (2) On peut écrire une clause while avec une condition toujours vraie (while 1 : ou while True:) à condition de sortir par un autre moyen, comme break ou return, pour éviter une boucle infinie Boucle de Contrôle de Saisie en est un exemple. Exemple: Exécution du script hammamif.laila@yahoo.com - CONTRÔLE DU FLUX D’EXÉCUTION - uploads/Management/ controle-de-flux-20-21-vn-etud.pdf

  • 17
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Apv 22, 2021
  • Catégorie Management
  • Langue French
  • Taille du fichier 2.9370MB