Open Source Your Knowledge, Become a Contributor
Technology knowledge has to be shared and made accessible for free. Join the movement.
Função Lambda
O python provê um tipo diferente de função denominado de função Lambda. Num primeiro momento, funções locais (def) e expressões lambda são muito semelhantes. Em muitos casos, a escolha entre usar expressões lambda e funções locais é uma questão de estilo e preferência pessoal.
Todas as características de uma função lambda são muito parecidas com as funções locais, com exceção de duas coisas: elas não possuem uma definição em código, ou seja, são declaradas como variáveis e não possuem um def próprio; e elas são funções de uma linha, que funcionam como se houvesse a instrução return antes do comando.
Veja o exemplo a seguir:
A forma geral para criação da Função Lambda é:
As variáveis que aparecem na definição da função são os parâmetros e fórmula é a expressão da função.
Exemplo:
In [1]: cubo = lambda numero: numero * numero * numero
In [2]: cubo(3)
Out[2]: 27
In [3]: cubo(5)
Out[3]: 125
Expressões lambda com Map(), Reduce() e Filter()
A função lamda pode ser utilizada em conjunto com outras funções como map, reduce e filter.
Função Map()
A função map() tem como objetivo aplicar uma função a todos os elementos de uma lista gerando uma nova lista como resultado. O formato geral é:
Função reduce()
A função reduce() aplica uma função em todos de uma lista, e retornar apenas um valor. O formato geral é:
Função filter()
A função filter() aplica um filtro sobre os elementos da lista, de acordo com a função passada como primeiro argumento. O formato geral é: