Les listes

Les listes

LISTES  :

Listes

Sous Python, on peut définir une liste comme une collection d’éléments séparés par des virgules, l’ensemble étant enfermé dans des crochets

Les éléments individuels qui constituent une liste peuvent être de type varié.

Les objets placés dans une liste sont rendus accessibles par

l’intermédiaire d’un

index
(un nombre qui indique l’emplacement de
l’objet dans la séquence. Il est possible de changer les éléments individuels d’une liste.
  • La fonction len() s’applique aux listes.
  • Il est possible de supprimer d’une liste un élément à partir de son index à l’aide de la fonction del() .
  • Il est possible d’ajouter un élément à une liste à l’aide de append().

Définition d’une liste :

On délimite une liste à l’aide de crochets on lui donne un nom :

liste_vide=[] ;liste_chaine=10*[""]  ;mots = ["droite","vert","gauche","haut","bas"] ;bref = [1987, "Alice", 2015, ["Bob", "Charlie"]]

CREATION DE LISTES  :

Commande Effet.
lst=[a,[t,v…],..]
Création d’une liste avec des éléments choisis par le programmeur.
lst=[]
Création d’une liste vide
lst=5*[0]
Création d’une liste qui peut contenir 5 entiers.
lst=n*[0]
Création d’une liste qui peut contenir n entiers.
lst=n*[""]
Création d’une liste qui peut contenir n chaînes de caractères

Modifications des listes :

index 0 1 2 3 4
mots
"droite"
"vert"
"gauche"
"haut"
"bas"
lst = ["droite","vert", "gauche", "haut", "bas"]
len(lst) #est égal à  5 , et l’index de la listemots va de 0 à 4.
Commande Effet
mots=[index]
Si index=1 alors mots[index] renvoie le deuxième élément de la liste : « gauche »
lst=[]
Création d’une liste vide
lst=mots
lst=["droite","gauche","haut","bas"]
lst.append("vert")
Insère « vert » à la fin de la liste.
lst =['droite','vert','gauche','haut','bas','vert']
lst+bref
lst.extend(bref)
Insère la liste bref à la fin de la liste lst
lst.insert(1, »vert »)
Insère « vert » au niveau de l’index 1 de la liste.
lst.append(1,"vert")
lst= ['droite','vert','gauche','haut','bas','vert']
"vert" in lst
Renvoie True si « vert » appartient à lst ou False s’il n’appartient pas.
Le mot vert est dans la liste
lst.remove("vert")
Supprime la première position du terme « vert » lst.remove(« vert »)
lst=['droite','gauche','haut','bas','vert']
del lst[0]
del lst[i :j]
Supprime le premier élément de la liste Supprime de la liste l’élément i jusqu’à l’élément j-1

COMMANDES  :

Commandes

remove() : recherche une valeur (si plusieurs éléments de la liste possèdent la même valeur, seul le premier est effacé). del() : travaille avec un index ou une tranche d’index,

lst = [17, 38, 10, 25, 72]
del lst[2]
print(lst)
[17, 38, 25, 72]
del lst [1:3]
  print(lst)
  [17, 72]
_images/image32.png

Fonctions et méthodes sur les listes :

Ce sont des fonctions qui prennent des listes en paramètres :
lst=[0,5,4,78,45,26,30,21,,47]
ch="Alice et Bob"
Fonction Effet
min(lst)
Renvoie le plus petit élément de la liste.
max(lst)
Renvoie le plus grand élément de la liste.
choice(lst)
Utilise from random import ,choix aléatoire d’un élément de la liste.
sep=" " :
ch.split(sep)
Création d’une liste contient des chaînes de caractères séparées par l’expression définie dans sep , extraites de la chaîne decaractères
ch="Alice et Bob" donne ['Alice', 'et', 'Bob']
sep= \*-\*
sep.join(lstchar)
Création d’une chaîne de caractères à partir d’une liste, avec des expressions définies par sep .
lstchar=["al","de","sir","at"]
"al\*-\*de\*-\*sir\*-\*at"
list(ch)
Création d’une liste à partir d’une chaîne de caractères.
ch=['A','l','i','c','e',' ','e','t',' ','B','o','b']
enumerate(lst)
enumerate prend en paramètre une liste et renvoie deux valeurs par éléments : l’indice et l’élément.
_images/blanc1.png
* Méthode Effet
premiers.sort()
Trier la liste
premiers=[11,13,23,31,43]
premiers.reverse()
Inverser l’ordre des éléments.
premiers=[43,31,23,13,11]
premiers.
index(23)
Retrouver l’index d’un élément.
2

EXEMPLES DE PROGRAMMES  :

_images/blanc1.png _images/image33.png

Minimum de la liste: (ligne 7)

Maximum de la liste: (ligne 87)

Choix aléatoire dans la liste: (ligne 9)

_images/image34.png
enumerate() # prend en paramètre une liste et renvoie deux valeurs par éléments : l’indice et l’élément.
(0, 'A')    ;    (1, 'l')    ;     (2, 'i')    ;    (3, 'c')     ;    (4, 'e')    ;    (5, ' ')
(7, 't')    ; `(8, ' ')     ;     (9, 'B')    ;    (10, 'o')    ;    (11, 'b')    ;    (6, 'e')

CREATION D’UNE LISTE AVEC range()  :

Création d’une liste de nombres à l’aide de la fonction \(\mathbf{\text{range}}\mathbf{}\mathbf{}\mathbf{(\ )}.\)

\(\mathbf{\text{range}}\mathbf{(}\mathbf{n}\mathbf{)}\) : (n un entier naturel) renvoie un itérateur qui parcours les nombres entiers naturels tels que .

Listes

list(range(8))= [0, 1, 2, 3, 4, 5, 6, 7] range(p,n) : renvoie un itérateur qui parcours les nombres entiers naturels tels que . list(range(5,12)) donne comme résultat : [5, 6, 7, 8, 9, 10, 11] list(range(n,p,k) : renvoie un itérateur qui parcours les nombres entiers naturels i tels que et list(range(3,16,3)) donne comme résultat : [3, 6, 9, 12, 15] On peut utiliser des entiers négatifs. list(range(3,-7,-1)) donne comme résultat : [3,2,1,0,-1,-2,-3,-4,-5,-6] list(range(-7,3,1)) donne comme résultat : [-7,-6,-5-4,-3,-2,-1,0,1,2]

Pour utiliser l’instruction for avec la fonction range( ), on procède de la façon suivante :

for i in range(N):  
{indentation}Bloc d’instructions

Remarque :

L’habitude a été prise de nommer les entiers utilisés par for i, j, ou k.

_images/image43.png
lundi
-\*-\*-\*-\*-\   *
mardi
-\*-\*-\*-\*-\   *
mercredi
-\*-\*-\*-\*-\   *
jeudi
-\*-\*-\*-\*-\   *
vendredi
-\*-\*-\*-\*-\   *
samedi
-\*-\*-\*-\*-\   *
dimanche
-\*-\*-\*-\*-\   *