Comment modifier des listes

2022-10-05 14:14:32  marcredi  6763 mots  

Vous pouvez modifier à votre guise le contenu d’une liste. Cela signifie changer une entrée particulière, en ajouter une nouvelle, ou encore supprimer une entrée existante. Python vous offre pour cela toute une série de fonctions :

  • append() : Ajoute une nouvelle entrée à la fin de la liste.
  • clear() : Supprime toutes les entrées de la liste.
  • copy() : Crée une copie de la liste et la place dans une nouvelle liste.
  • extend() : Ajoute des éléments d’une liste existante à la liste courante.
  • insert() : Ajoute une nouvelle entrée à la position spécifiée dans la liste.
  • pop() : Supprime une entrée à la fin de la liste.
  • remove() : Supprime une entrée à la position spécifiée dans la liste.

Les étapes qui suivent vous montrent comment modifier une liste. Vous retrouverez plus tard les mêmes fonctions appliquées dans des situations plus concrètes. Pour l’instant, il s’agit simplement de se familiariser avec la gestion des listes.

  1. Ouvrez une fenêtre de Python en mode Shell.
  2. Tapez List1 = [] et appuyez sur Entrée.
    Python crée une liste appelée List1.
    Ici, les crochets sont vides. Autrement dit, List1 ne contient aucune entrée. Il est possible de spécifier des listes vides qui seront remplies par la suite. En fait, c’est précisément ainsi que de nombreuses listes débutent, car vous ne savez pas toujours quelles informations elles vont contenir jusqu’à ce que l’utilisateur commence à interagir avec elles.
  3. Tapez len(List1) et appuyez sur Entrée.
    La fonction len() renvoie la valeur 0, comme l’illustre la Figure.
    >>> Liste1 = []
    >>> len(Liste1)
    0
    Ce qui est normal, puisque la liste est pour l’instant vide. Dans ce cas, vous savez que vous ne pouvez pas effectuer certaines actions, comme supprimer un élément, puisque justement il n’y en a pas encore.
  4. Tapez List1.append(1) et appuyez sur Entrée.
  5. Tapez len(List1) et appuyez sur Entrée.
    La fonction len () renvoie maintenant une longueur égale à 1.
  6. Tapez List1[0] et appuyez sur Entrée.
    Vous constatez que le premier élément de la liste List1 vaut bien 1 (voir la Figure).
    Figure : Ajouter un élément change la longueur de la liste et place cet élément à la fin de celle-ci.
    >>> Liste1 = []
    >>> len(Liste1)
    0
    >>> Liste1.append(1)
    >>> len(Liste1)
    1
    >>> Liste[0]
    Traceback (most recent call last):
      File "<pyshell#4>", line 1, in <module>
        Liste[0]
    NameError: name 'Liste' is not defined. Did you mean: 'Liste1'?
    >>> Liste1[0]
    1
  7. Tapez List1.insert(0, 2) et appuyez sur Entrée.
    La fonction insert() nécessite deux arguments. Le premier est l’indice de l’insertion, en l’occurrence l’élément de rang 0. Le second est l’objet que vous voulez insérer à cet emplacement, donc 2 dans ce cas.

    Figure : Vous pouvez ajouter de nouveaux éléments à la position voulue.

    >>> Liste1.insert(0,2)
  8. Tapez List1 et appuyez sur Entrée.
    Python a ajouté le nouvel élément à la liste. Cet élément est venu se placer tout au début de celle-ci, comme l’illustre la Figure.
    >>> Liste1
    [2, 1]
  9. Tapez List2 = List1.copy() et appuyez sur Entrée.
    La nouvelle liste, List2, est une copie exacte de List1. Cette technique est souvent employée pour créer une version temporaire d’une liste de manière à ce que l’utilisateur puisse y faire des modifications sans toucher à la liste originale, ce qui peut éviter de nombreux problèmes. Lorsque l’utilisateur a terminé, l’application peut alors décider si la liste temporaire doit simplement être détruite, ou si elle doit être recopiée dans la liste d’origine, ce qui permet de valider les modifications apportées.
  10. Tapez List1.extend(List2) et appuyez sur Entrée.
    Python recopie le contenu de List2 à la fin de List1. L’extension est couramment utilisée pour consolider deux listes.
  11. Tapez List1 et appuyez sur Entrée.
    Vous constatez que la copie et l’extension ont bien fonctionné. List1 contient maintenant les valeurs 2, 1, 2 et 1 (voir la Figure).

    Figure : La copie et l’extension fournissent des méthodes pour déplacer rapidement des données.

  12. Tapez List1.pop() et appuyez sur Entrée.
    Python affiche comme résultat 1 (voir la Figure). Ce 1 était le dernier élément de la liste. La fonction pop () l’a supprimé tout en indiquant ce qu’il détruisait.
    Figure : La fonction pop() supprime les éléments placés en fin de liste.
  13. Tapez List1.remove(1) et appuyez sur Entrée.
    Cette fois, Python supprime l’élément de rang 1. Contrairement à la fonction pop(), remove () n’affiche pas la valeur de l’élément supprimé.
  14. Tapez List1.clear() et appuyez sur Entrée.
    La liste est maintenant nettoyée de tous ses éléments.
  15. Tapez len(List1) et appuyez sur Entrée.
    Vous constatez que la sortie est bien égale à 0. La liste List1 est définitivement vide. À ce stade, vous venez d’essayer toutes les méthodes de modification des listes fournies par Python. Vous pouvez bien entendu prolonger cet exemple avec vos propres manipulations jusqu’à ce que vous vous sentiez à l’aise avec cette gestion des listes.
  16. Refermez la fenêtre de Python.
Commentaire