Funciones Lambda
Las funciones lambda son funciones anónimas, las cuales se definen así:
Un uso práctico de las funciones simplificadas es crear funciones que sólo se usarán en una única linea de código,
ahorrando la definición y asiganción de nombre habitual.
Este modo de uso es muy habitual dentro de funciones map()
, reduce()
, etc, las cuales se explican más adelante.
Si se requiere reutilización, a las funciones lambda se les puede asignar una variable para referenciarlas, el cual servirá como nombre de función:
Y se llaman como una función normal:función lambda: multiplicación
Tip: funciones con argumentos preasignados
Con las funciones lambda se puede crear variantes alternativas de otras funciones, por ejemplo asignándole valores a algunos argumentos de entrada. Por ejemplo: crear varias funciones que calculan distintas potencias de un número de entrada a partir de una función genérica.
Info
Nótese que las funciones lambda son reconocidas por el intérprete de Python como si fueran funciones normales.
Esta forma de definirlas es útil para definir manejadores (handlers), es decir funciones que se ejecutan ante eventos específicos del programa.
Tip: manejadores (handlers)
# definicion
def nombre_funcion(x):
return expresion(x)
# asignacion
handler_evento = nombre_funcion
Con el uso de funciones lambda, esta rutina se reduce a:
Funciones flecha
Las funciones lambda son análogas a las funciones flecha de JavaScript y se usan de modo similar.