11 méthodes de liste Python indispensables

Dans ce didacticiel, vous apprendrez à utiliser les méthodes de liste Python pour ajouter, modifier et supprimer des éléments des listes Python.

Lorsque vous débutez dans la programmation en Python, les listes sont l’une des premières structures de données intégrées que vous découvrirez. Au cours des prochaines minutes, nous passerons en revue les bases des listes Python, puis passerons en revue plusieurs méthodes de liste utiles que vous pouvez utiliser lorsque vous travaillez avec des listes.

Commençons!

Un aperçu des listes Python

En Python, une liste est une collection d’éléments de type(s) de données identique(s) ou différent(s). Vous pouvez effectuer une boucle dans la collection pour accéder aux éléments à l’aide de constructions de boucle telles que les boucles for.

Comme tous les itérables Python, les listes suivent l’indexation zéro et prennent en charge l’opération de découpage.

Ce sont des collections modifiables, vous pouvez donc les modifier sur place. Cela inclut l’ajout et la suppression d’éléments de la liste, le tri des éléments dans un ordre particulier, l’inversion de l’ordre des éléments, et bien plus encore. Les méthodes de liste intégrées de Python vous aident à effectuer ces actions.

Ensuite, regardons quelques méthodes de liste Python utiles.

Méthodes de liste intégrées en Python

Dans cette section, nous allons apprendre quelques méthodes de liste qui seront utiles. Nous allons coder des exemples pour voir ces méthodes de liste en action.

Nous utiliserons la liste pgm_langs suivante. Il s’agit d’une liste de chaînes contenant les noms des langages de programmation populaires.

pgm_langs = ['Python','Go','Rust','JavaScript']

Insérer des éléments de liste avec insert()

Vous voudrez peut-être insérer un élément à un index particulier. Pour ce faire, vous pouvez utiliser la méthode insert(). L’appel de la méthode de liste insert() prend en compte :

  • L’index auquel l’élément doit être inséré, et
  • L’élément à insérer.

Insérons ‘Scala’ à l’index 1 en utilisant la méthode index().

pgm_langs = ['Python','Go','Rust','JavaScript']
pgm_langs.insert(1,'Scala')
print(pgm_langs)
# Output: ['Python', 'Scala', 'Go', 'Rust', 'JavaScript']

Ajouter un élément à la liste avec append()

Parfois, vous devrez peut-être ajouter un élément à la fin de la liste. Pour ce faire, vous pouvez utiliser la méthode append().

Ajoutons la chaîne ‘Java’ à la fin de la liste en utilisant la méthode append().

pgm_langs.append('Java')
print(pgm_langs)
# Output: ['Python', 'Scala', 'Go', 'Rust', 'JavaScript', 'Java']

Ajouter un itérable avec extend()

Vous savez que vous pouvez utiliser la méthode append() pour ajouter un seul élément. Mais que se passe-t-il si vous souhaitez ajouter plusieurs éléments à une liste existante, par exemple une liste d’éléments ? La méthode extend() fournit une syntaxe concise pour le faire.

Ajoutons les éléments de la liste more_langs à la liste pgm_langs en utilisant la méthode extend().

more_langs = ['C++','C#','C']
pgm_langs.extend(more_langs)
print(pgm_langs)
# Output: ['Python', 'Scala', 'Go', 'Rust', 'JavaScript', 'Java', 'C++', 'C#', 'C']

Vous pouvez parcourir la liste des éléments et utiliser la méthode append() pour ajouter un élément à la fois. Cependant, c’est verbeux. Et il est plus pratique d’utiliser la méthode extend() à la place.

for lang in more_langs:
    pgm_langs.append(lang)

Inverser une liste avec reverse()

Pour inverser l’ordre des éléments dans une liste, vous pouvez appeler la méthode reverse().

Nous voyons que la liste pgm_langs a été inversée.

pgm_langs.reverse()
print(pgm_langs)
# Output: ['C', 'C#', 'C++', 'Java', 'JavaScript', 'Rust', 'Go', 'Scala', 'Python']

Trier une liste avec sort()

Vous pouvez trier la liste Python en place en utilisant la méthode sort(). Puisque pgm_langs est une liste de chaînes, nous voyons que le tri s’effectue par ordre alphabétique.

pgm_langs.sort()
print(pgm_langs)
# Output: ['C', 'C#', 'C++', 'Go', 'Java', 'JavaScript', 'Python', 'Rust', 'Scala']

Pour trier la liste dans l’ordre alphabétique inverse, vous pouvez définir le paramètre reverse sur True dans l’appel de la méthode sort().

pgm_langs.sort(reverse=True)
print(pgm_langs)
# Output: ['Scala', 'Rust', 'Python', 'JavaScript', 'Java', 'Go', 'C++', 'C#', 'C']

En savoir plus sur le tri des listes Python.

Faire une copie superficielle avec copy()

Il peut parfois être utile de modifier une copie de la liste originale au lieu de modifier la liste originale elle-même. La méthode de liste copy() renvoie une copie superficielle de la liste Python.

Créons une copie superficielle de la liste pgm_langs et appelons-la pgm_langs_copy. Et nous définissons le premier élément de la liste sur ‘Haskell’ et l’imprimons.

pgm_langs_copy = pgm_langs.copy()
pgm_langs_copy[0]='Haskell'
print(pgm_langs_copy)
# Output: ['Haskell', 'Rust', 'Python', 'JavaScript', 'Java', 'Go', 'C++', 'C#', 'C']

Cependant, nous voyons que la liste pgm_langs n’est pas modifiée. Par conséquent, la création d’une copie superficielle et sa modification ne modifient pas la liste d’origine.

print(pgm_langs)
# Output: ['Scala', 'Rust', 'Python', 'JavaScript', 'Java', 'Go', 'C++', 'C#', 'C']

Obtenir le nombre d’articles avec count()

Parfois, il est utile de connaître le nombre de fois qu’un élément particulier apparaît dans une liste. La méthode count() renvoie le nombre de fois qu’un élément apparaît dans une liste.

Dans la liste pgm_langs, tous les éléments apparaissent exactement une fois. Ainsi, lorsque nous essayons d’obtenir le nombre de ‘Go’, nous obtenons 1, ce qui est correct.

print(pgm_langs.count('Go'))
# Output: 1

L’utilisation de la méthode count() est l’un des moyens de supprimer les éléments en double des listes Python.

Obtenir l’index d’un élément avec index ()

Pour trouver l’index d’un élément dans une liste Python, vous pouvez utiliser la méthode index(). Supposons que nous aimerions trouver l’index de ‘C#’ dans la liste pgm_langs. Nous pouvons utiliser l’instruction assert pour vérifier que l’élément qui indexe 7 est ‘C#’.

print(pgm_langs.index('C#'))
# Output: 7
assert pgm_langs[7] == 'C#'

Supprimer l’élément d’un index avec pop()

Examinons maintenant les méthodes de liste des méthodes de liste pour supprimer des éléments des listes Python. La méthode pop() est utilisée pour supprimer et renvoyer un élément à un index particulier. D’après l’exemple de code précédent, nous savons que ‘C#’ est le langage à l’index 7.

Lorsque nous appelons la méthode pop() sur la liste pgm_langs avec 7 comme index, nous voyons qu’elle renvoie ‘C#’, l’élément à l’index 7, et le supprime également de la liste.

print(pgm_langs.pop(7))
# Output: 'C#'
print(pgm_langs)
# Output: ['Scala', 'Rust', 'Python', 'JavaScript', 'Java', 'Go', 'C++', 'C']

Ainsi, la méthode pop() supprime et renvoie un élément à l’index spécifié. Toutefois, la spécification de l’index est facultative. Lorsque vous ne spécifiez pas l’index, la méthode pop() supprime et renvoie le dernier élément de la liste Python, comme indiqué :

print(pgm_langs.pop())
# Output: 'C'
print(pgm_langs)
# Output: ['Scala', 'Rust', 'Python', 'JavaScript', 'Java', 'Go', 'C++']

Supprimer des éléments avec remove()

Parfois, vous pouvez savoir quel élément supprimer mais pas son index. Dans ce cas, vous pouvez utiliser la méthode remove(), qui prend un élément à supprimer et le supprime. Supprimons ‘Java’ de la liste pgm_langs en utilisant la méthode remove() comme indiqué.

pgm_langs.remove('Java')
print(pgm_langs)
# Output: ['Scala', 'Rust', 'Python', 'JavaScript', 'Go', 'C++']

Supprimer tous les éléments avec clear()

Que faire si vous souhaitez supprimer tous les éléments d’une liste Python ? Vous pouvez parcourir la liste et supprimer chaque élément à l’aide de la méthode remove(), comme ceci :

for lang in pgm_langs:
    pgm_langs.remove(lang)

Mais y a-t-il une meilleure façon? Oui, en utilisant la méthode clear(). Nous voyons que l’appel de la méthode clear sur la liste pgm_langs supprime tous les éléments, et pgm_langs est maintenant une liste vide.

pgm_langs.clear()
print(pgm_langs)
# Output: []

Un résumé des méthodes de liste Python

Résumons rapidement les différentes méthodes de liste et leur syntaxe :

List MethodSyntaxDescriptioninsert()list1.insert(index, elt)Insère elt à l’index dans list1append()list1.append(elt)Ajoute elt à la fin de list1extend()list1.extend(list2)Ajoute des éléments de list2 à la fin de list1sort ()list1.sort()Trie la liste en placereverse()list1.reverse()Inverse la liste1 en placecopy()list1.copy()Renvoie une copie superficielle de list1count()list1.count(elt)Renvoie le nombre d’elt en list1index()list1.index(elt)Renvoie l’index de elt dans list1pop()list1.pop(index)Supprime elt à l’index et le retourne. remove()list1.remove(elt)Supprime elt de list1clear()list1.clear()Supprime tous les éléments de list1

Conclusion

J’espère que ce tutoriel vous a aidé à comprendre comment utiliser certaines des méthodes de liste les plus courantes en Python. Dans une prochaine étape, découvrez les tuples Python et les différences entre les listes et les tuples en Python.

Si vous apprenez Python, vous pouvez consulter cette liste de ressources d’apprentissage adaptées aux débutants.