PaliSkill
Python intermédiaire

Leçon 5 / 9 — Chapitre 3: Compréhensions et tri de données

Compréhension imbriquée sur une liste de listes

Quand on a une liste de listes, une compréhension peut parcourir chaque sous-liste avec deux for à la suite, dans l'ordre ou on les ecrirait avec des boucles imbriquées classiques.

groupes = [[1, 2, 3], [4, 5]]
tous = [n for groupe in groupes for n in groupe]
print(tous)

Ce code affiche [1, 2, 3, 4, 5]. Le premier for groupe in groupes parcourt chaque sous-liste, et le second for n in groupe parcourt les nombres à l'intérieur de cette sous-liste — les deux boucles s'ecrivent l'une après l'autre, dans le même ordre qu'on les imbriquerait normalement.

Cette même compréhension, ecrite avec des boucles classiques, donnerait :

tous = []
for groupe in groupes:
    for n in groupe:
        tous.append(n)

Les deux versions produisent exactement le même résultat ; au-dela de deux niveaux, une compréhension imbriquée devient vite difficile à relire — mieux vaut alors repasser à des boucles classiques.

A vous de jouer : avec une liste de listes de nombres, ecrivez une compréhension imbriquée qui rassemble tous les nombres dans une seule liste plate.

🔒

Continuez ce module

Débloquez les leçons restantes ainsi que la certification finale.

2 500 XOF / 3,81 € / 4,15 $

Débloquez les 85 leçons restantes de ce module

Votre paiement est vérifié avant l'activation de l'accès