PaliSkill
Python intermédiaire

Leçon 6 / 9 — Chapitre 2: Fonctions avancées

map() et filter() : appliquer une fonction à toute une liste

map() applique une fonction à chaque élément d'une liste, et filter() ne garde que les éléments pour lesquels une fonction renvoie True. Les deux renvoient un objet special qu'il faut convertir avec list() pour l'afficher directement.

prix = [5, 8, 3]

prix_double = list(map(lambda x: x * 2, prix))
print(prix_double)

Ce code affiche [10, 16, 6] : map() applique la lambda x * 2 à chaque élément de prix, un par un, et produit une nouvelle liste de même longueur.

prix_eleves = list(filter(lambda x: x > 4, prix))
print(prix_eleves)

Ce code affiche [5, 8] : filter() ne garde que les éléments pour lesquels x > 4 est vrai, ici 5 et 8, en excluant 3.

Ces deux fonctions font souvent le même travail qu'une boucle for ou qu'une compréhension de liste (vue au chapitre suivant) — le choix entre les deux styles est surtout une question de lisibilite selon le contexte.

A vous de jouer : avec une liste de nombres, utilisez filter() et une lambda pour ne garder que les nombres superieurs à 10.

🔒

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