Exercices Fonctions & Modules Somme avec reduce
🎉

Bravo!

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.

Exemple :
somme([1, 2, 3, 4]) renvoie 10
somme([]) renvoie 0

Tests (3/4)

Cas standard
assert somme([1, 2, 3, 4]) == 10
Liste vide
assert somme([]) == 0
Un seul élément
assert somme([42]) == 42

+ 0 tests cachés

Indices (3 disponibles)

solution.py