Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révisionLes deux révisions suivantes | ||
python:bases:listes [2024/02/28 19:24] – [6. Parcours des listes] phil | python:bases:listes [2024/02/29 08:20] – [Résumé] phil | ||
---|---|---|---|
Ligne 38: | Ligne 38: | ||
// | // | ||
<code python *.py> | <code python *.py> | ||
- | # Deux variables pointent vers le même objet | + | # Deux variables pointent vers le même objet (aliasing) |
t1 = [' | t1 = [' | ||
t2 = t1 # Python ne crée pas un autre tableau mais une référence (pointeur) vers t1 | t2 = t1 # Python ne crée pas un autre tableau mais une référence (pointeur) vers t1 | ||
Ligne 104: | Ligne 104: | ||
//Exemple// | //Exemple// | ||
+ | {{ : | ||
<code python *.py> | <code python *.py> | ||
impaire = [1, | impaire = [1, | ||
Ligne 118: | Ligne 119: | ||
//Exemple// | //Exemple// | ||
+ | {{ : | ||
<code python *.py> | <code python *.py> | ||
t1 = [1,2,3] | t1 = [1,2,3] | ||
t2 = [4,5,6] | t2 = [4,5,6] | ||
t3 = t1 + t2 | t3 = t1 + t2 | ||
- | print(t3) | + | print(t3) |
+ | |||
+ | # Résultat : [1, | ||
</ | </ | ||
==== 5. Suppression d' | ==== 5. Suppression d' | ||
Ligne 210: | Ligne 214: | ||
{{ : | {{ : | ||
==== 7. Affectation sur les slices ==== | ==== 7. Affectation sur les slices ==== | ||
- | <callout type=" | + | <callout type=" |
// Exemple //: remplacement d' | // Exemple //: remplacement d' | ||
+ | {{ : | ||
<code python *.py> | <code python *.py> | ||
l=[0, | l=[0, | ||
l[4: | l[4: | ||
- | # Les éléments | + | # Les éléments |
- | # puis remplacés par 4,5,6 | + | # puis remplacés par les valeurs |
+ | # 6 est ajouté avant 7. 7,8,9 sont décalés) | ||
# Résultat : [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] | # Résultat : [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] | ||
</ | </ | ||
// Exemple //: effacement d' | // Exemple //: effacement d' | ||
+ | {{ : | ||
<code python *.py> | <code python *.py> | ||
l=[0, | l=[0, | ||
- | l[4: | + | l[4: |
- | # | + | # |
# Résultat : [0, | # Résultat : [0, | ||
</ | </ | ||
Ligne 231: | Ligne 238: | ||
==== 8. Compréhensions de liste ==== | ==== 8. Compréhensions de liste ==== | ||
- | <callout type=" | + | <callout type=" |
+ | // | ||
+ | //liste// = **[**// | ||
- | //Exemples// | + | //Exemple de création d'une liste par compréhension// |
+ | |||
+ | <code python *.py> | ||
+ | # Forme habituelle | ||
+ | t = [0]*100 | ||
+ | for i in range(100): | ||
+ | t[i] = 3*i+1 | ||
+ | |||
+ | # Notation par compréhension | ||
+ | t = [3*i+1 for i in range 100] | ||
+ | </ | ||
+ | //Exemples de traitement de listes par compréhension// | ||
+ | {{ : | ||
<code python *.py> | <code python *.py> | ||
prenom = [' | prenom = [' | ||
Ligne 253: | Ligne 274: | ||
[x for x in range(i,j)] | [x for x in range(i,j)] | ||
# ou | # ou | ||
+ | # La fonction prédéfinie list transforme l' | ||
list(range(i, | list(range(i, | ||
</ | </ | ||
Ligne 264: | Ligne 286: | ||
t = [[1, | t = [[1, | ||
</ | </ | ||
- | + | {{ : | |
- | {{ : | + | |
- | * **Accès à un élément** | + | |
- | <code python *.py> | + | |
- | a = t[2][1] # renvoi 2 | + | |
- | </ | + | |
* **Construction par compréhension** | * **Construction par compréhension** | ||
Ligne 275: | Ligne 292: | ||
# Tableau 3 x 5 | # Tableau 3 x 5 | ||
t = [[0]*5 for i in range(3)] | t = [[0]*5 for i in range(3)] | ||
+ | </ | ||
+ | |||
+ | {{ : | ||
+ | <callout type=" | ||
+ | |||
+ | * **Accès à un élément** | ||
+ | <code python *.py> | ||
+ | a = t[2][1] # renvoi 2 | ||
</ | </ | ||
Ligne 372: | Ligne 397: | ||
* On peut supprimer des éléments d'une liste avec le mot-clé **del**, la méthode **remove** ou une opération de slice. | * On peut supprimer des éléments d'une liste avec le mot-clé **del**, la méthode **remove** ou une opération de slice. | ||
* On peut créer des fonctions attendant un nombre inconnu de paramètres en plaçant une ** * ** devant le nom du paramètre. | * On peut créer des fonctions attendant un nombre inconnu de paramètres en plaçant une ** * ** devant le nom du paramètre. | ||
- | * Les compréhensions de liste permettent de parcourir et filtrer une séquence | + | * Les compréhensions de liste permettent de parcourir et filtrer une séquence en renvoyant une nouvelle avec la syntaxe \\ // |
* Un tuple est une séquence pouvant contenir des objets. À la différence de la liste, le tuple ne peut pas être modifié une fois créé. | * Un tuple est une séquence pouvant contenir des objets. À la différence de la liste, le tuple ne peut pas être modifié une fois créé. | ||