Python - Listes

Python - Lists

Bonjour, aspirants programmeurs !aujourd'hui, nous plongeons dans le merveilleux monde des listes Python. En tant que votre enseignant en informatique de quartier, je suis ravi de vous guider à travers ce voyage. Commençons par les bases et travaillons notre chemin vers des concepts plus avancés. Crois-moi, à la fin de ce tutoriel, vous serez un pro des listes ! ?

Python Listes

Les listes en Python sont comme les couteaux suisses des structures de données. Elles sont polyvalentes, faciles à utiliser et incroyablement puissantes. Imaginez que vous organisez une fête et devez garder la trace de vos invités. Une liste serait parfaite pour cela !

Créons notre première liste :

invités = ["Alice", "Bob", "Charlie", "David"]
print(invités)

Lorsque vous exécutez ce code, vous verrez :

['Alice', 'Bob', 'Charlie', 'David']

Félicitations ! Vous avez juste créé votre première liste. Mais qu'est-ce qui se passe exactement ici ?

Une liste en Python est une collection d'éléments entre crochets [], chaque élément étant séparé par une virgule. Ces éléments peuvent être de n'importe quel type - des chaînes, des nombres, même d'autres listes !

Voici un autre exemple avec des types de données mélangés :

liste_mélangée = [42, "Bonjour", 3.14, True, [1, 2, 3]]
print(liste_mélangée)

Sortie :

[42, 'Bonjour', 3.14, True, [1, 2, 3]]

Comme vous pouvez le voir, notre liste contient un entier, une chaîne, un flottant, un booléen et même une autre liste !

Accès aux valeurs dans les listes

Maintenant que nous avons notre liste d'invités, comment vérifions-nous qui vient ? C'est là que l'indexation devient pratique. En Python, l'indexation des listes commence à 0. Donc, pour accéder au premier élément, nous utilisons l'index 0.

invités = ["Alice", "Bob", "Charlie", "David"]
print(invités[0])  # Premier invité
print(invités[2])  # Troisième invité
print(invités[-1])  # Dernier invité

Sortie :

Alice
Charlie
David

Notez comment nous avons utilisé -1 pour accéder au dernier élément ? L'indexation négative commence à la fin de la liste. C'est comme compter à rebours !

Mise à jour des listes

Oups ! Nous avons oublié d'inviter Eve. Ajoutons-la à notre liste :

invités = ["Alice", "Bob", "Charlie", "David"]
invités.append("Eve")
print(invités)

Sortie :

['Alice', 'Bob', 'Charlie', 'David', 'Eve']

La méthode append() ajoute un élément à la fin de la liste. Mais que faire si nous voulons ajouter Eve entre Bob et Charlie ?

invités.insert(2, "Eve")
print(invités)

Sortie :

['Alice', 'Bob', 'Eve', 'Charlie', 'David', 'Eve']

Maintenant, nous avons deux Eves ! Corrigeons cela dans la section suivante.

Supprimer des éléments de la liste

Parfois, nous devons supprimer des éléments de notre liste. Supprimons l'Eve supplémentaire :

invités = ['Alice', 'Bob', 'Eve', 'Charlie', 'David', 'Eve']
invités.remove("Eve")
print(invités)

Sortie :

['Alice', 'Bob', 'Charlie', 'David', 'Eve']

La méthode remove() supprime la première occurrence de l'élément spécifié. Si nous connaissons l'index, nous pouvons utiliser pop() :

invité_supprimé = invités.pop(3)
print(f"{invité_supprimé} ne peut pas venir.")
print(invités)

Sortie :

David ne peut pas venir.
['Alice', 'Bob', 'Charlie', 'Eve']

Opérations sur les listes Python

Les listes en Python ont quelques astuces pratique dans leur manche. Explorons-en quelques-unes :

# Concaténation
liste1 = [1, 2, 3]
liste2 = [4, 5, 6]
combinée = liste1 + liste2
print(combinée)

# Répétition
répétée = [1, 2, 3] * 3
print(répétée)

# Longueur
invités = ['Alice', 'Bob', 'Charlie', 'Eve']
print(len(invités))

Sortie :

[1, 2, 3, 4, 5, 6]
[1, 2, 3, 1, 2, 3, 1, 2, 3]
4

Indexation, tranches et matrices

Vous vous souvenez comment nous avons accédé aux éléments individuels ? Nous pouvons également saisir plusieurs éléments à la fois à l'aide de tranches :

invités = ['Alice', 'Bob', 'Charlie', 'David', 'Eve']
print(invités[1:4])  # Début à l'index 1, jusqu'à (mais pas inclus) l'index 4
print(invités[:3])   # Du début jusqu'à (mais pas inclus) l'index 3
print(invités[2:])   # De l'index 2 jusqu'à la fin
print(invités[::2])  # Chaque deuxième élément

Sortie :

['Bob', 'Charlie', 'David']
['Alice', 'Bob', 'Charlie']
['Charlie', 'David', 'Eve']
['Alice', 'Charlie', 'Eve']

Les listes peuvent également être utilisées pour créer des matrices (listes 2D) :

matrice = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
print(matrice[1][1])  # Accéder à l'élément de la deuxième ligne, deuxième colonne

Sortie :

5

Méthodes de liste Python

Python fournit une variété de méthodes intégrées pour les listes. Voici un tableau de quelques-unes courantes :

Méthode Description
append() Ajoute un élément à la fin de la liste
clear() Supprime tous les éléments de la liste
copy() Retourne une copie de la liste
count() Retourne le nombre d'éléments avec la valeur spécifiée
extend() Ajoute les éléments d'une liste à la fin de la liste actuelle
index() Retourne l'index du premier élément avec la valeur spécifiée
insert() Ajoute un élément à la position spécifiée
pop() Supprime l'élément à la position spécifiée
remove() Supprime le premier élément avec la valeur spécifiée
reverse() Inverse l'ordre de la liste
sort() Trie la liste

Essayons quelques-unes :

nombres = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3]
nombres.sort()
print(nombres)
nombres.reverse()
print(nombres)
print(nombres.count(5))

Sortie :

[1, 1, 2, 3, 3, 4, 5, 5, 6, 9]
[9, 6, 5, 5, 4, 3, 3, 2, 1, 1]
2

Fonctions intégrées avec des listes

Python fournit également plusieurs fonctions intégrées qui fonctionnent bien avec les listes :

nombres = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3]
print(max(nombres))  # Valeur maximale
print(min(nombres))  # Valeur minimale
print(sum(nombres))  # Somme de toutes les valeurs

Sortie :

9
1
39

Et voilà, les amis ! Nous avons parcouru la terre des listes Python, de la création à la manipulation, des opérations simples aux méthodes intégrées. souvenez-vous, la pratique fait le maître, donc n'hésitez pas à expérimenter avec ces concepts.

Avant de terminer, voici un fait amusant : Ssaviez-vous que les listes Python sont en réalité implémentées comme des tableaux dynamiques ? Cela signifie qu'elles peuvent grandir ou rétrécir selon les besoins, ce qui les rend incroyablement flexibles.

J'espère que vous avez aimé ce tutoriel autant que j'ai aimé vous guider à travers lui. Continuez à coder, à apprendre et, plus importantly, à vous amuser avec Python !

Credits: Image by storyset