Le chat d'octets

Photo de Gribouille

Les listes en Python

Les listes

En Python, une liste est une structure de données qui permet de stocker une collection d'éléments. Ces éléments peuvent être de n'importe quel type (nombres, chaînes de caractères, objets, etc.), et une même liste peut contenir des éléments de types différents.

Création d'une liste

Une liste est créée en utilisant des crochets [], et les éléments sont séparés par des virgules.
Par exemple :

ma_liste = [1, 2, 3, 4]

C'est une liste contenant quatre entiers.

Nous pouvons aussi créer une liste vide :

liste_vide = []    

Accéder aux éléments d'une liste

Les éléments d'une liste sont accessibles par leur index. L'index commence à 0 pour le premier élément, 1 pour le deuxième, etc.

ma_liste = [10, 20, 30, 40]
print(ma_liste[0])  # 10
print(ma_liste[2])  # 30

Nous pouvons aussi utiliser des indices négatifs pour accéder aux éléments à partir de la fin de la liste :

print(ma_liste[-1])  # 40
print(ma_liste[-2])  # 30

Modifier une liste

Les éléments d'une liste peuvent être modifiés en utilisant l'index :

ma_liste[1] = 25
print(ma_liste)  # [10, 25, 30, 40]    

Nous pouvons ajouter des éléments à la fin d'une liste avec la méthode .append() :

ma_liste.append(50)
print(ma_liste)  # [10, 25, 30, 40, 50]

Nous pouvons ajouter plusieurs éléments à la fois, en utilisant .extend() :

ma_liste.extend([60, 70])
print(ma_liste)  # [10, 25, 30, 40, 50, 60, 70]

Supprimer des éléments d'une liste

Il existe plusieurs manières de supprimer des éléments d'une liste :

Longueur d'une liste

La fonction len() permet de connaître la taille (le nombre d'éléments) d'une liste :

print(len(ma_liste))  # 4

Travailler avec des sous-listes (slicing)

Vous pouvez obtenir une sous-liste en utilisant la notation `:` (slicing).
Par exemple :

ma_liste = [1, 2, 3, 4, 5]
sous_liste = ma_liste[1:4]  # Extrait les éléments d'index 1 à 3
print(sous_liste)  # [2, 3, 4]

Compréhensions de listes

Les compréhensions de listes en Python permettent de créer des listes de manière concise et élégante. Elles sont une sorte de raccourci pour créer des listes en appliquant une expression sur chaque élément d'une séquence (comme une liste, un range, etc.), avec ou sans condition.

Structure d'une compréhension de liste

[expression for item in iterable]

Exemple :

On veut créer une liste qui contiendra le carré des nombres contenu dans une liste :

nombres = [1, 2, 3, 4]
carres = [x**2 for x in nombres]
print(carres)  # [1, 4, 9, 16]

Avec une condition

Nous pouvons aussi ajouter une condition pour filtrer les éléments avant de les ajouter à la liste. Par exemple, pour obtenir les carrés des nombres pairs seulement :

nombres = [1, 2, 3, 4, 5, 6]
carres_pairs = [x**2 for x in nombres if x % 2 == 0]
print(carres_pairs)  # [4, 16, 36]

Conclusion

Les listes en Python sont des structures très flexibles et puissantes qui permettent de stocker et manipuler des collections d'éléments. Nous pouvons les modifier, y ajouter ou supprimer des éléments, et y accéder de manière simple et efficace grâce aux indices et aux méthodes intégrées.

Les compréhensions de listes permettent de :

  1. Appliquer une transformation à chaque élément d'une séquence.
  2. Ajouter une condition pour ne garder que certains éléments.
  3. Créer des listes de manière concise et lisible.