Easier to read with cream paper, a tint, more contrast or larger text? Choose your colours and text, once, for every page.

Aperçu

Une fonction dans une fonction

Voici la première page de la leçon. Lis-la et essaie les activités. La suite est dans le cours complet.

35 minutes

Les soldes

Dans un magasin, un vendeur colle une étiquette « moins 10 % » sur dix articles. Le lendemain, il colle « moins 20 % » sur les mêmes.

Le geste est le même : parcourir les articles. Seule la remise change.

On peut écrire le parcours une seule fois, et lui donner la remise à appliquer.

Mots-clés

MotCe que ça veut direExemple
FonctionUn petit programme qui a un nom. Voir la leçon « Les fonctions ».double
ParamètreUn nom entre parenthèses qui reçoit une valeur.fonction
AppelUtiliser une fonction avec des parenthèses.double(5)
Nouvelle listeUne liste fabriquée par la fonction, sans toucher à la liste de départ.resultat = []
RemiseUne baisse de prix.moins 10 pour cent

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

Une fonction est une valeur

En Python, une fonction est une valeur comme une autre. Tu peux la ranger dans une variable.

Tu peux aussi la donner à une autre fonction, comme tu donnes un nombre.

Écris le nom sans parenthèses : on parle de la fonction. Avec parenthèses, on l’appelle.

À toi : la fonction comme valeur

Code: python
def double(nombre):
    return nombre * 2


# Sans parenthèses, on parle de la fonction elle-même.
print(double)

# Avec parenthèses, on l'appelle.
print(double(5))

# On peut ranger la fonction dans une autre variable.
multiplier = double
print(multiplier(8))

# Ajoute une fonction triple et appelle-la aussi.

Exemple travaillé : avec ou sans parenthèses

On écritCe que c’estRésultat
doublela fonction elle-mêmeun objet fonction
double(5)un appel avec 510
multiplier = doubleun deuxième nom pour la fonctionrien à l’écran
multiplier(8)un appel par le deuxième nom16

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

Contrôle rapide

À toi de jouer

Contrôle rapide

3 questions
Essayez : vos réponses sont notées ici puis oubliées. Connectez-vous si vous voulez conserver votre score et reprendre là où vous en étiez.Se connecter pour conserver mon score

Tes réponses sont corrigées ici et ne sont pas conservées. Un compte garde tes résultats.

Appliquer à une liste

Voici la fonction appliquer. Elle reçoit une fonction et une liste.

Elle parcourt la liste avec for. Pour chaque élément, elle appelle la fonction reçue. Elle range le résultat dans une nouvelle liste.

Elle rend cette nouvelle liste. L’ancienne reste intacte.

À toi : appliquer une fonction

Code: python
def double(nombre):
    return nombre * 2


def carre(nombre):
    return nombre * nombre


def appliquer(fonction, liste):
    # Rend une nouvelle liste : la fonction appliquée à chaque élément.
    resultat = []
    for element in liste:
        resultat.append(fonction(element))
    return resultat


notes = [3, 5, 8]
print(appliquer(double, notes))
print(appliquer(carre, notes))
print(notes)

# Essaie avec la fonction len sur ["bus", "tram", "metro"].

Exemple travaillé : appliquer(double, [3, 5, 8])

Tourelementfonction(element)resultat après le tour
départ--[]
136[6]
2510[6, 10]
3816[6, 10, 16]

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

La leçon continue

7 parties de plus de cette leçon se trouvent dans le cours complet, avec les exercices et la vérification finale. Un compte te donne tout.