Parcours de listes

Parcours de listes#

La boucle for permet de parcourir chacun des éléments d’une liste.

liste = [1, 2, 3, 4, 5]
for element in liste:
    print(element)
1
2
3
4
5

On peut utiliser la fonction range pour parcourir la liste avec un index en fonction de sa longueur.

À faire

  • Introduire cela plus loin, juste avant le(s) exercice(s) pour les manipuller.

  • Utiliser une liste non numérique pour l’exemple. Donner un exemple pour lequel cela ait un intérêt d’avoir simultanément l’indice et la valeur.

liste = [1, 2, 3, 4, 5]
for i in range(len(liste)):
    print(liste[i])
1
2
3
4
5

Exercice

Définissez les fonctions somme, maximum et minimum qui renvoient respectivement la somme, le maximum et le minimum d’une liste d’entiers.

def maximum(liste):
    ### BEGIN SOLUTION
    m = liste[0]
    for element in liste:
        if element >= m:
            m = element
    return m
    ### END SOLUTION
#TODO tests
def minimum(liste):
    ### BEGIN SOLUTION
    m = liste[0]
    for element in liste:
        if element <= m:
            m = element
    return m
    ### END SOLUTION
#TODO tests
def somme(liste):
    ### BEGIN SOLUTION
    somme = 0
    for i in liste:
        somme += i
    return somme
    ### END SOLUTION
#TODO tests

Exercice

Définissez la fonction dernierIndiceMaximum qui renvoie l’indice du maximum d’une liste. Si le maximum apparaît plusieurs fois dans la liste, on veut l’indice de sa dernière occurrence.

def dernierIndiceMaximum(liste):
    ### BEGIN SOLUTION
    m = liste[0]
    longueur=len(liste)
    indice_max = 0
    for i in range(longueur):
        if liste[i] >= m:
            m = liste[i]
            indice_max = i
    return indice_max
    ### END SOLUTION
#TODO tests