Python intermédiaire pour développeurs et développeuses
Jasmin Ludolf
Senior Data Science Content Developer
def average(values):
average_value = sum(values) / len(values)
return average_value
lambda
lambda
lambda
lambda arguments
lambda
lambda arguments:
lambda$$
lambda arguments: expression
x pour un seul argumentexpression équivaut au corps de la fonctionreturn n'est requis$$
# Fonction lambda pour la moyenne
print(lambda x: sum(x) / len(x))
<function <lambda> at 0x7f11ab813d80>
# Fonction personnalisée de moyenne
def average(x):
return sum(x) / len(x)
print(average)
<function average at 0x7f11ab813ec0>
# Obtenir la moyenne
(lambda x: sum(x) / len(x))
# Obtenir la moyenne
(lambda x: sum(x) / len(x))([3, 6, 9])
$$
$$
# Afficher la moyenne
print((lambda x: sum(x) / len(x))([3, 6, 9]))
6.0
# Stocker une fonction lambda dans une variable average = lambda x: sum(x) / len(x)# Appeler la fonction average print(average([3, 6, 9]))
6.0
# Fonction lambda avec deux arguments power = lambda x, y: x**y# Élever 2 à la puissance 3 print(power(2, 3))
8
map() applique une fonction à tous les éléments d'un itérablenames = ["john", "sally", "leah"]# Appliquer une fonction lambda dans map() capitalize = map(lambda x: x.capitalize(), names)print(capitalize)
<map object at 0x7fb200529c10>
# Convertir en liste
print(list(capitalize))
['John', 'Sally', 'Leah']
| Scénario | Type de fonction |
|---|---|
| Tâche complexe | Personnalisée |
| Même tâche plusieurs fois | Personnalisée |
| Exécutée une seule fois | Lambda |
| Tâche simple | Lambda |
Python intermédiaire pour développeurs et développeuses