Intermédiaire
🧠 Fondamentaux
20 XP
0 personnes ont réussi
Somme avec reduce
reduce() est la troisieme grande fonction de la programmation fonctionnelle. Contrairement a filter() (qui selectionne) et map() (qui transforme), reduce() combine tous les éléments d'un iterable en une seule valeur.
Imagine une boule de neige qui roule : a chaque tour, elle grossit en absorbant un nouvel élément. reduce() fonctionne pareil : elle prend un accumulateur (le résultat en cours) et l'élément suivant, et les combine.
Attention : reduce() n'est pas une fonction native de Python. Il faut l'importer depuis le module functools : from functools import reduce
La syntaxe est : reduce(fonction, iterable, valeur_initiale)
La fonction prend deux arguments : l'accumulateur et l'élément courant.
Par exemple, pour multiplier tous les éléments : reduce(lambda acc, x: acc * x, [1, 2, 3, 4]) donne 24 (car 1*2*3*4 = 24)
Écris une fonction somme(nombres) qui utilise reduce() pour calculer la somme de tous les éléments. Si la liste est vide, renvoie 0.