2. Fonction print() Interaction avec l’utilisateur: input() Importer un module de fonctions Module turtle Véracité/fausseté d’une expression 2 Plan
3. Fonctions Groupe d’instructions regroupées sous un nom + s’exécutent à la demande (appel) Permettent de décomposer un programme en sous-programmes plus simples. Peuvent inclure des appels à d’autres fonctions. Permettent la réutilisation de code Exemple: Écrire une fonction de calcul de factorielle, qui peut être réutilisée au lieu de coder à nouveau le calcul. 3
4. Fonction pour l’affichage print() Affichage de plusieurs valeurs fournies en arguments. L’insertion d’une virgule entre arguments de print == insertion d’espaces lors de l’affichage Se termine par l’affichage d’un saut à la ligne. Exemple 4 Code print "La fonction print" print "" print "Bonjour", "à", "tous" Exécution La fonction print Bonjour à tous
5. Interaction avec l’utilisateur: Fonction input() Provoque une interruption dans le programme courant. Le programme reste dans l’attente de la saisie de l’utilisateur L’utilisateur doit confirmer sa saisie en appuyant sur la touche « Entrée » (« Enter »). La fonction fournit en retour une chaîne de caractères correspondant à ce que l’utilisateur a entré 5 Code print("La fonction input") prenom = input("Entrez votre prenom : ") print("Bonjour,", prenom) Exécution La fonction input Entrez votre prénom : dr Bonjour, dr
6. Alternatives à la fonction input Selon la version du compilateur de Pyhton maVariable=raw_input(" Saisir quelque chose") Alternative à raw_input() Importer avant le début du programme le module « sys » import sys Afficher un message pour l’utilisateur Lire la saisie par la fonction « sys.stdin.readline()» Exemple print("Saisir quelque chose") #afficher le message pour l'utilisateur maVariable= sys.stdin.readline() #lire la saisie de l'utilisateur. 6
7. Conversion (1/2) Convertir une valeur, d’un type à un autre str(var1): renvoie la valeur de var1 convertie en chaine de caractère. float(var2): renvoie la valeur de var2 convertie réel. int(var3): renvoie la valeur de var3 convertie en entier. bool(var4): renvoie la valeur de var4 convertie en booléen. Remarques La conversion ne concerne pas la variable, mais une copie de sa valeur. Certaines conversions ne sont pas possibles Exemple: convertir une chaîne alphanumérique en entier ou en réel. 7
8. Conversion(2/2) 8 Script 1 print("Veuillez entrer un nombre positif : ", end=" ") ch = input() nn = int(ch) print("Le carré de", nn, "vaut", nn**2) Code Veuillez entrer un nombre positif : 88 Le carré de 88 vaut 7744 Script 2 a = input("Entrez une donnée numérique : ") print(type(a)) b = float(a) print(type(b)) Code Entrez une donnée numérique : 8.99 <class 'str'> <class 'float'>
9. Importer un module de fonctions Les fonctions intégrées au langage et utilisables immédiatement Fonctions à usage fréquent Les autres fonctions du langage Intégrées dans des fichiers séparés (modules) Exemple: utilisation de fonctions mathématiques du langage Python 9 Code from math import* nombre = 121 angle = pi/6 print("racine carrée de", nombre, "=", sqrt(nombre)) print("sinus de", angle, "radians", "=", sin(angle)) Exécution racine carrée de 121 = 11.0 sinus de 0.523598775598 radians = 0.5 Index de modules Python: http://docs.python.org/py3k/modindex.html
10. Caractéristiques d’une fonction nom + « ( » + 0 ou plusieurs argments + « ) » Exemple: sqrt(121) La fonction donne une valeur de retour ≡ La fonction renvoye une valeur ≡ La fonction retourne une valeur sqrt(121) retourne la valeur 11. 10
11. Exemple d’un module: turtle Offre des fonctions de dessin dans une interface graphique. 11 http://docs.python.org/release/2.5.2/lib/module-turtle.html
12. Utilisation de Turtle 12 Code from turtle import *forward(120) left(90) color('red') forward(80) reset() a = 0 while a < 12 : a = a +1 forward(150) left(150)
13. Véracité/fausseté d’une expression Lors de l’utilisation de if ou de while, l’ordinateur évalue une condition (expression logique) Est-ce que l’expression est vraie ou fausse? 13 Code ch = input('Entrez un nombre entier quelconque : ') n = int(ch) if n: print("vrai") else: print("faux") Exécution Ce programme n’affiche « faux » que si vous entrez la valeur 0.
14. Opérations sur les listes (5/5) Lesvaleurs des expressions logiques: « True » ou « False» Cas de chaines de caractères: Chaine vide donne faux /Chaine non vide donne vrai 14 Code a, b = 3, 8 c = (a < b) d = (a > b) print(c) print(d) Exécution True False Code ch = input("Entrez une chaîne de caractères quelconque : ") if ch: print("vrai") else: print("faux") Exécution Ce programme n’affiche « faux » que si vous entrez une chaine vide.
15. Exemple print("Choisissez un nombre de 1 à 3 (0 pour terminer)") a = int(input()) while a: # équivalent à : < while a != 0: > if a == 1: print("Vous avez choisi un :") print("le premier, l'unique, l'unité ...") elif a == 2: print("Vous préférez le deux :") print("la paire, le couple, le duo ...") elif a == 3: print("Vous optez pour le plus grand des trois :") print("le trio, la trinité, le triplet ...") else : print("Un nombre entre UN et TROIS, s.v.p.") print("Choisissez un nombre de 1 à 3 (0 pour terminer)", end=' ') a = int(input()) print("Vous avez entré zéro :") 15
16. Séparateur On peut remplacer le séparateur par défaut l’espace par un caractère quelconque, ou même, par aucun caractère Utilisation de l’argument sep. 16 Code print("Bonjour", "à", "tous", sep ="*") print("Bonjour", "à", "tous", sep ="") Exécution Bonjour*à*tous Bonjouràtous
17. Saut à la ligne 17 Code n = 0 while n < 6 : print("plop!") n = n + 1 Exécution plop! plop! plop! plop! plop! plop! Remplacer le saut à la ligne avec l’argument end. Code n = 0 while n < 6 : print("plop!", end = "") n = n + 1 Exécution plop! plop!plop!plop! plop! plop!