Listes et dictionnaires
1) Les compréhensions de list
.⚓︎
Syntaxe des compréhensions de list
Les compréhensions de listes permettent d’initialiser facilement des listes. La syntaxe est :
[
expression1 for
element in
liste if
expression2]
- Applique l’expression1 à chaque élément de la liste si expression2 est vraie
- Il peut y avoir 0 ou plus instructions for ou if
- Si l’expression évalue un tuple, il doit être entre parenthèses
Exemple d'utilisation :
🐍 Script Python | |
---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
2) Les listes de listes.⚓︎
Chaque élément d'une liste peut être une liste, on parle de liste de listes.
Voici un exemple de liste de listes :
m = [[1, 3, 4], [5 ,6 ,8], [2, 1, 3], [7, 8, 15]]
Le premier élément de la liste ci-dessus est bien une liste ([1, 3, 4]
), le deuxième élément est aussi une liste ([5, 6, 8]
)...
Il est souvent plus pratique de présenter ces " listes de listes" comme suit :
🐍 Script Python | |
---|---|
1 2 3 4 |
|
Il est évidemment possible d'utiliser les indices de position avec ces "listes de listes". Pour cela nous allons considérer notre liste de listes comme une matrice, c'est à dire en utilisant les notions de "ligne" et de "colonne". Ainsi, pour accéder à l’élément de la 2ème ligne (indice 1), 3ème colonne (indice 2), il faut écrire :
a = m[1][2] # après exécution de l’instruction, a = 8
Il est possible de parcourir l'ensemble des éléments d'une matrice à l'aide de 2 boucles for
imbriquées :
🐍 Script Python | |
---|---|
1 2 3 4 |
|
On pourra par exemple représenter les pixels d’une image sous forme de matrice et accèder à chacun des pixels à l’aide de ces 2 boucles imbriquées.
3) Les dictionnaires.⚓︎
Les dictionnaires permettent de "stocker" des données sous forme de 2 éléments clef et valeur (en anglais : key et value).
Exemple de dictionnaire :
🐍 Script Python | |
---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
|
Accès aux éléments : comparaison entre les listes et les dictionnaires.
Opération | Pour une liste | Pour un dictionnaire |
---|---|---|
Initialisation | liste = [1, 2, 3, 9, 6] |
dico = {'A':2 , 'B':5, 'C':9} |
Accès à un élément | valeur = liste[3] |
valeur = dico['C'] |
Modification d'un élément | liste[2] = 45 |
dico['B'] = 23 |
Ajout d'un élément | liste.append(36) |
dico['D'] = 7 |
Longueur | len(liste) |
len(dico) |
Savoir si un élément est présent | if valeur in liste |
if valeur in dico.values() |
Savoir si une clé est présente | - | if clef in dico.keys(): |
Itérer sur les clefs | - | for clef in dico.keys(): |
Itérer sur les valeurs | - | for valeur in dico.values(): |
Itérer sur les clefs et valeurs | - | for clef, valeur in dico.items(): |