Python — Listes et tuples
1) Créer une liste
primes = [2, 3, 5, 7]
planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]
# Une liste de listes
hands = [
["J", "Q", "K"],
["2", "2", "2"],
["6", "A", "K"], # La virgule finale est optionnelle
]
# Tout peut être mélangé dans une liste
my_favourite_things = [32, "raindrops on roses", help]
2) Indexation
Les listes utilisent un index zéro-based : le premier élément a l’index 0.
print(planets[0]) # Premier élément
print(planets[1]) # Deuxième
print(planets[-1]) # Dernier
print(planets[-2]) # Avant-dernier
Sortie
Mercury
Venus
Neptune
Uranus
3) Slicing (tranchage)
On peut récupérer une sous-liste avec :.
print(planets[0:3]) # du 0 inclus au 3 exclu
print(planets[:3]) # équivalent
print(planets[3:]) # du 3 jusqu'à la fin
print(planets[1:-1]) # tout sauf le premier et le dernier
print(planets[-3:]) # les 3 derniers
Sortie
['Mercury', 'Venus', 'Earth']
['Mercury', 'Venus', 'Earth']
['Mars', 'Jupiter', 'Saturn', 'Uranus', 'Neptune']
['Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Uranus']
['Saturn', 'Uranus', 'Neptune']
4) Modifier une liste (mutabilité)
Les listes sont mutables : on peut les modifier en place.
planets[3] = "Malacandra"
print(planets)
# Renommer les 3 premiers
planets[:3] = ["Mur", "Vee", "Ur"]
print(planets)
# Rétablir les noms d'origine
planets[:4] = ["Mercury", "Venus", "Earth", "Mars"]
print(planets)
5) Fonctions utiles avec les listes
print(len(planets)) # nombre d'éléments
print(sorted(planets)) # tri alphabétique
primes = [2, 3, 5, 7]
print(sum(primes)) # somme
print(max(primes)) # maximum
Sortie
8
['Earth', 'Jupiter', 'Mars', 'Mercury', 'Neptune', 'Saturn', 'Uranus', 'Venus']
17
7
6) Objets, attributs et méthodes
En Python, tout est un objet : chaque objet a des attributs et des méthodes accessibles avec la syntaxe objet.attribut.
Exemple avec les nombres :
x = 12
print(x.imag) # partie imaginaire
print((12 + 3j).imag)
print(x.bit_length()) # méthode qui retourne le nombre de bits nécessaires
Sortie
0
3.0
4
7) Méthodes des listes
Ajouter un élément : .append
planets.append("Pluto")
print(planets)
Sortie
['Mercury', 'Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Uranus', 'Neptune', 'Pluto']
Retirer un élément : .pop
last = planets.pop()
print(last)
print(planets)
Sortie
Pluto
['Mercury', 'Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Uranus', 'Neptune']
Chercher un élément : .index et in
print(planets.index("Earth")) # position de Earth
print("Earth" in planets) # test d'appartenance
print("Pluto" in planets) # test d'absence
Sortie
2
True
False
8) Tuples
Les tuples ressemblent aux listes, mais sont immuables.
t = (1, 2, 3)
print(t)
# Syntaxe équivalente
t = 1, 2, 3
print(t)
# Erreur si on essaie de modifier
# t[0] = 100 # ❌
Sortie
(1, 2, 3)
(1, 2, 3)
TypeError: 'tuple' object does not support item assignment
Retour multiple avec un tuple
x = 0.125
num, den = x.as_integer_ratio()
print(num, den)
print(num / den)
Sortie
1 8
0.125
Astuce : swap de variables
a, b = 1, 0
a, b = b, a
print(a, b)
Sortie
0 1
🚀 Conclusion
Vous savez maintenant :
- créer et manipuler des listes avec indexation et slicing,
- comprendre la mutabilité des listes,
- utiliser les principales fonctions (
len,sorted,sum,max) et méthodes (append,pop,index,in), - et utiliser des tuples pour représenter des collections immuables ou gérer plusieurs valeurs de retour.