Neste artigo, você aprenderá sobre a função anônima, também conhecida como funções lambda. Você aprenderá o que são, sua sintaxe e como usá-los (com exemplos).
O que são funções lambda em Python?
Em Python, uma função anônima é uma função definida sem um nome.
Enquanto as funções normais são definidas com a def
palavra - chave em Python, as funções anônimas são definidas com a lambda
palavra - chave.
Portanto, as funções anônimas também são chamadas de funções lambda.
Como usar funções lambda em Python?
Uma função lambda em python possui a seguinte sintaxe.
Sintaxe da função Lambda em python
argumentos lambda: expressão
As funções lambda podem ter qualquer número de argumentos, mas apenas uma expressão. A expressão é avaliada e retornada. As funções lambda podem ser usadas sempre que os objetos de função são necessários.
Exemplo de função Lambda em python
Aqui está um exemplo de função lambda que dobra o valor de entrada.
# Program to show the use of lambda functions double = lambda x: x * 2 print(double(5))
Resultado
10
No programa acima, lambda x: x * 2
é a função lambda. Aqui x é o argumento e x * 2
a expressão avaliada e retornada.
Esta função não tem nome. Ele retorna um objeto de função que é atribuído ao identificador double
. Agora podemos chamá-lo como uma função normal. A declaração
double = lambda x: x * 2
é quase o mesmo que:
def double (x): retorna x * 2
Uso da função Lambda em python
Usamos funções lambda quando exigimos uma função sem nome por um curto período de tempo.
Em Python, geralmente o usamos como um argumento para uma função de ordem superior (uma função que recebe outras funções como argumentos). As funções Lambda são usadas junto com funções integradas como filter()
, map()
etc.
Exemplo de uso com filtro ()
A filter()
função em Python recebe uma função e uma lista como argumentos.
A função é chamada com todos os itens da lista e uma nova lista é retornada contendo itens para os quais a função avalia True
.
Aqui está um exemplo de uso de filter()
função para filtrar apenas números pares de uma lista.
# Program to filter out only the even items from a list my_list = (1, 5, 4, 6, 8, 11, 3, 12) new_list = list(filter(lambda x: (x%2 == 0) , my_list)) print(new_list)
Resultado
(4, 6, 8, 12)
Exemplo de uso com mapa ()
A map()
função em Python inclui uma função e uma lista.
A função é chamada com todos os itens da lista e uma nova lista é retornada, contendo itens retornados por aquela função para cada item.
Aqui está um exemplo de uso de map()
função para dobrar todos os itens em uma lista.
# Program to double each item in a list using map() my_list = (1, 5, 4, 6, 8, 11, 3, 12) new_list = list(map(lambda x: x * 2 , my_list)) print(new_list)
Resultado
(2, 10, 8, 12, 16, 22, 6, 24)