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.