À retenir
-
Dans la programmation fonctionnelle:
- une fonction renvoie toujours le même résultat pour une même entrée,
- les données sont immuables.
-
En programmation fonctionnelle, une fonction est une donnée comme une autre. Les fonctions d’ordre supérieur peuvent:
- accepter des fonctions en paramètre,
- renvoyer une fonction.
def carre(x: int) -> int:
return x**2
def cube(x: int) -> int:
return x**3
def calculer(calcul, tab: list) -> list:
res = []
for nb in tab:
res.append(calcul(nb))
return res
# programme principal
t = [1, 2, 3]
print(calculer(carre, t))
print(calculer(cube, t))
print(t)