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

Aperçu

Chercher dans une liste

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

Ton nom sur la feuille

La feuille de classe est affichée à la porte. Trente prénoms. Tu cherches le tien.

Tu lis le premier. Ce n'est pas toi. Le deuxième. Pas toi non plus. Tu continues, un par un, jusqu'à te reconnaître.

Tu viens de suivre un algorithme de recherche. Dans cette leçon, tu l'écris en Python.

Mots-clés

MotCe que ça veut direExemple
ListePlusieurs valeurs rangées les unes après les autres.["Zoé", "Lucas"]
ÉlémentUne valeur de la liste."Lucas"
IndiceLe numéro de la case d'un élément. On commence à 0.Dans la liste ci-dessus, "Lucas" est à l'indice 1.
ParcoursLire les cases une par une, dans l'ordre.Lire toute la feuille de classe
RechercheChercher une valeur dans une liste.Chercher "Camille"
ArrêtOn s'arrête dès qu'on a trouvé.Tu as trouvé ton nom : tu arrêtes de lire.

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

À toi : les cases d'une liste

Code: python
noms = ["Zoé", "Lucas", "Camille", "Inès", "Hugo"]

for indice in range(len(noms)):
    print("Case", indice, ":", noms[indice])

# Les cases sont numérotées à partir de 0.
# Ajoute un prénom à la fin de la liste et relance.

L'idée de la recherche

On lit la liste case par case. À chaque case, on pose une question : « Est-ce la valeur cherchée ? »

Si oui, on donne l'indice et on s'arrête. Si on arrive au bout sans rien trouver, on donne -1. Le nombre -1 ne peut pas être un indice : il veut dire « absent ».

Exemple travaillé : chercher Camille dans la liste

ÉtapeIndiceCase lueC'est Camille ?On fait quoi ?
10ZoénonOn continue
21LucasnonOn continue
32CamilleouiOn s'arrête, réponse : 2

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

À toi : l'état après l'étape 3

À toi de jouer

À toi : l'état après l'étape 3

4 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.

À toi : la fonction chercher

Code: python
def chercher(noms, nom):
    for indice in range(len(noms)):
        print("Je lis la case", indice, ":", noms[indice])
        if noms[indice] == nom:
            return indice
    return -1


noms = ["Zoé", "Lucas", "Camille", "Inès", "Hugo"]
print("Résultat :", chercher(noms, "Camille"))

# Cherche "Hugo", puis "Marie". Combien de cases sont lues ?

Où mettre return -1 ?

Attention

Le return -1 est après la boucle, collé à gauche. S'il est dans la boucle, la fonction répond -1 dès la première case ratée. Elle ne lit jamais la suite.

La leçon continue

8 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.