Fonctions
#Fonctions
Les fonctions factorisent la logique et améliorent la lisibilité.
pythonpython
1def area(w: float, h: float) -> float:2 """Retourne l'aire d'un rectangle."""3 return w * h4 5print(area(3, 4))
Arguments nommés et valeurs par défaut:
pythonpython
1def power(x, exp=2):2 return x ** exp3 4print(power(3), power(2, exp=3))
Variables locales vs globales: préférer le passage de paramètres aux effets globaux.
#Récursion
pythonpython
1def fact(n: int) -> int:2 return 1 if n <= 1 else n * fact(n-1)3 4print(fact(5))
#Visualiser la pile d'appels
main
Sommet
Pile initialisée avec 1 éléments
Étape 1 / 1 | Taille: 1
#Playground
#Exercices
- Écrire
pgcd(a,b)
(algorithme d’Euclide). - Écrire
fib(n)
avec mémoïsation (dict). - Écrire une fonction qui normalise une liste de nombres entre 0 et 1.
- Implémenter un décorateur pour mesurer le temps d'exécution d'une fonction.
#Solutions (exemples)
- Implémenter un décorateur pour mesurer le temps d'exécution d'une fonction.