V  Les listes

Principe

Une liste est une structure de données constituée d'un ensemble ordonné fini et modifiable d’objets indicés. Autrement dit, une liste est une séquence finie modifiable d’objets numérotés à partir de l'indice 0. La liste fibo = [1, 1, 2, 3, 5, 8] contient six éléments ordonnés de type int.

Syntaxe

On écrit les éléments composant une liste entre crochets [ ] et séparés par des virgules.

On accède aux éléments de la liste en utilisant leur indice. Dans l'exemple ci-dessus, fibo[5] renvoie l'élément d'indice 5 de la liste c'est à dire 8 (sixième élément de la liste), fibo[0] renvoie l'élément d'indice 0 (le premier de la liste).

Exemples

 
				

Exécuter le programme, puis appeler temperatures[2], puis planetes[0]

Générer une liste

Par affectation directe

On affecte au nom de la liste l'ensemble ordonnés de ses éléments entres crochets :

temperatures = [7.0 ,10.0 ,12.0 ,9.5 ,11.5 ,8.0 ,10.0]

Par ajouts successifs

La méthode .append( ) permet d'ajouter un nouvel élément en fin de liste.

 
				

Exécuter le programme, puis appeler cubes dans la console.

En compréhension

Une liste en compréhension permet de créer une liste à partir d’un processus d'itération décrit entre crochets.

 
				

Exécuter le programme, puis appeler listecubes, pairs, puis nombres

Opérations sur les listes

Manipulation des éléments d'une liste

On onsidère la liste de températures temp ci-dessous:

 
				

Exécuter le programme ci-dessus, puis effectuer les opérations ci-dessous dans la console.

temp.count(10.0) renvoie 2, c'est le nombre d'occurrences de l'élément 10.0.

len(temp) renvoie 7, c'est la longueur de la liste.

temp.sort( ) renvoie la liste dans l'ordre croissant : [5, 11, 11, 14, 20, 33, 47].

temp[4] = 15.0 affecte la valeur 15.0 à l'élément d'indice 4 (cinquième élément).

temp.remove(10.0) supprime la première ocurrence de 10.0 dans la liste.

temp.insert(2,17.0) insère la valeur 17.0 au rang 2 : [14, 5, 47, 20, 11, 11, 33]

Parcourir les éléments d'une liste

Pour parcourir les éléments d'une liste, une utilise une boucle avec le mot clé in

 
				

Exécuter le programme, puis appeler la fonction moyenne(temperatures) dans la console.

Exercices

Exercice 1

On considère le programme ci-dessous :

 
				

1. Compléter le programme ci-dessus pour générer la liste des altitudes pour t entier allant de 0 s à 7 s en utilisant la méthode append( ).

2. Vérifier votre travail en exécutant le programme et en appelant altitudes dans la console.

3. Réaliser le même exercice en générant cette fois la liste des altitudes par compréhension.

Exercice 2

Écrire une fonction qui renvoie la liste des multiples de 3 ou 5 strictement inférieurs à 100.

 
				

Exercice 3

On considère la formule de conversion d'une tempréture en degrés Farenheit d'une tempréture donnée en degrés Celsius :    TF = 1,38 × TC + 32

1. Compléter la fonction farenheit qui prend en paramètre TC , température en degrés Celsius et renvoie la température correspondante en degrés Farenheit.

2. Exécuter votre programme et tester le en appelant la fonction farenheit pour différentes valeurs du paramètre.

3. Ecrire une fonction conv qui prend en paramètre une liste de tempértures en degrés Celsius et revoie la liste des températures converies en degré Farenheit.

4. Exécuter le programme et appeler conv(hebdo) pour vérifier votre travail.