J'oublierai bientôt la fonction anonyme, alors faites une note pour moi-même
Utilisé pour simplifier le code
def calc_multi(a, b):
return a * b
calc_multi(3, 10)
#production
# 30
Ce processus peut être écrit comme Le point est lambda a, b :, qui correspond au nom de la fonction (a, b) Décrivez le traitement de la fonction (renvoyez ici a * b) séparés par:
(lambda a, b: a * b)(3, 10)
#production
# 30
Les expressions Lambda sont souvent utilisées lorsque vous souhaitez exécuter une fonction sur un élément tel qu'une liste Utilisez ** la fonction de carte (fonction d'ordre supérieur) ** lorsque vous souhaitez traiter un élément Fonction qui utilise une fonction comme argument ou valeur de retour, et qui est utilisée lorsque vous souhaitez traiter ou opérer sur chaque élément.
def calc_double(x) :
return x * 2
for num in [1, 2, 3, 4]:
print(calc_double(num))
#production
# 2
# 4
# 6
# 8
Si vous utilisez la fonction de carte, vous pouvez traiter la liste telle quelle
list(map(calc_double, [1, 2, 3, 4]))
#production
# [2,4,6,8]
De plus, si vous utilisez une fonction anonyme, vous pouvez écrire comme suit
list(map(lambda x : x * 2, [1, 2, 3, 4]))
#production
# [2,4,6,8]
Recommended Posts