Fonctions avec paramètresChapitre 11/13
Une fonction qui dit toujours la même chose
Au chapitre précédent, tu as écrit des fonctions sans paramètre. Elles font toujours exactement la même chose à chaque appel :
def dire_bonjour():
print("Bonjour Alice")
dire_bonjour()
dire_bonjour()C'est limité. Si tu veux saluer Bob, il faut écrire une deuxième fonction dire_bonjour_bob, puis une troisième pour Chloé... Ce qu'on voudrait, c'est une seule fonction à qui on dit, au moment de l'appel, qui saluer : dire_bonjour("Alice"), puis dire_bonjour("Bob").
Pour ça, on écrit un nom de variable entre les parenthèses du def. C'est un paramètre :
def dire_bonjour(nom):
print("Bonjour", nom)
dire_bonjour("Alice")
dire_bonjour("Bob")À l'appel dire_bonjour("Alice"), la variable nom prend la valeur "Alice", et le corps de la fonction s'exécute avec cette valeur. À l'appel suivant, nom vaut "Bob". Même code, résultat différent.
À retenirLe paramètre est une variable qui n'existe qu'à l'intérieur de la fonction. Elle est créée au moment de l'appel, avec la valeur qu'on lui donne, et elle disparaît quand la fonction se termine.
Programme complet du cours Python (13 chapitres, gratuit)
- 1. Pourquoi programmer ? : Ce qu'est vraiment un programme : des instructions en langage humain, traduites pour un ordinateur qui ne devine rien.
- 2. Python : ses mots-clés et ses fonctions : La courte liste des mots que Python connaît, le concept de fonction avec print() et input(), et un programme lu comme une simple traduction du français.
- 3. Séquentialité : une étape après l'autre : Python lit ligne par ligne, et à l'intérieur d'une ligne, opération par opération : l'ordre est tout sauf un détail.
- 4. Variables et types de données : Mémoriser une valeur avec =, et pourquoi chaque valeur a un type : int, float, str, bool, et comment passer de l'un à l'autre.
- 5. Les opérations : qui prend quoi, et donne quoi : Chaque opérateur prend deux valeurs d'un certain type et en produit une d'un certain type : arithmétique, comparaison, logique, et les opérations sur les chaînes.
- 6. Conditions : if, else, elif : Exécuter un bloc seulement si le résultat après if vaut True, d'où qu'il vienne ; puis sinon, et sinon si.
- 7. Boucles : for et while : Répéter sans recopier : for pour parcourir une collection ou compter avec range, while tant qu'une condition est vraie, et comment choisir.
- 8. Les listes : Ranger plusieurs valeurs dans une seule variable : créer une liste, lire un élément, la parcourir, l'agrandir avec append.
- 9. Les dictionnaires : Associer une clé à une valeur : créer un dictionnaire, lire, ajouter, modifier, et le parcourir.
- 10. Écrire ses propres fonctions : Donner un nom à un bloc d'instructions avec def, puis l'appeler autant de fois qu'on veut.
- 11. Fonctions avec paramètres : Donner des informations à une fonction au moment de l'appel : un paramètre, puis plusieurs, et ce qui se passe à l'intérieur.
- 12. Fonctions qui renvoient une valeur : La différence entre afficher et renvoyer : return donne un résultat qu'on peut stocker, comparer, réutiliser.
- 13. La totale : tout combiner : Des programmes complets qui mélangent variables, opérations, conditions, boucles, listes, dictionnaires et fonctions, dont le retour de la liste d'appel.