Salve salve Pythonista!
Funções lambda são uma ferramenta poderosa na programação Python, que permite a criação de funções anônimas, ou seja, sem necessidade de dar um nome para elas.
Elas são úteis quando precisamos de uma função simples, que será utilizada apenas uma vez e não precisa ser reutilizada em outro lugar do código.
Neste artigo, vamos dar uma olhada nas principais características das funções lambda, além de mostrar alguns exemplos de como elas podem ser usadas para resolver problemas comuns.
Vá direto ao assunto…
Como criar Funções lambda
Uma função lambda é criada usando a palavra-chave lambda
, seguida de um ou mais argumentos, e uma expressão:
- argumentos são os dados de entrada que esta função irá receber
- expressão é o código que será executado quando a função lambda for chamada.
Sua sintaxe básica é a seguinte:
1
lambda {argumentos}: {expressão}
Veja o exemplo abaixo:
1
2
soma = lambda x, y: x + y
print(soma(2, 3))
Nela:
- Os argumentos são 2:
x
ey
- A expressão a ser executada:
x + y
A saída do código acima será o resultado de soma(2, 3)
:
1
5
Podemos armazenar a função lambda em uma variável, como no exemplo acima, ou chamá-la diretamente:
1
print((lambda x, y: x + y)(2, 3))
E a saída será a mesma.
Note o conjunto de parentêses para criação da função e outro para os argumentos.
Dessa forma a função lambda está sendo criada e já chamada!
Está curtindo esse conteúdo?
Que tal receber 30 dias de conteúdo direto na sua Caixa de Entrada?
Usando funções lambda com map
, filter
e reduce
Uma das principais utilidades das funções lambda é quando elas são usadas em conjunto com as funções map
, filter
e reduce
(agora no pacote functools
).
Ainda não domina a utilização das funções
map
efilter
? Então não perca tempo e aprenda essas duas funções incríveis AGORA clicando aqui para ler esse artigo completão!
Veja o exemplo abaixo, onde usamos a função map
para aplicar uma função lambda que eleva cada elemento de uma lista ao quadrado:
1
2
3
lista = [1, 2, 3, 4]
print(list(map(lambda x: x ** 2, lista)))
E a saída será:
1
[1, 4, 9, 16]
No exemplo abaixo,usamos a função filter
para retornar apenas os números pares de uma lista:
1
2
3
lista = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(list(filter(lambda x: x % 2 == 0, lista)))
Gerando a saída:
1
[2, 4, 6, 8, 10]
Por fim, veja o exemplo a seguir, onde usamos a função reduce
para somar todos os elementos de uma lista:
1
2
3
4
5
from functools import reduce
lista = [1, 2, 3, 4, 5]
print(reduce(lambda x, y: x + y, lista))
1
15
Sabe onde você pode aprender tudo sobre Funções Lambda, com aula, exemplos, e exercícios? Na Jornada Python - nosso curso completão de Python e Djago! Dá uma conferida no link abaixo!
Conclusão
Funções lambda são uma ferramenta poderosa e versátil na programação Python, que permite criar funções anônimas de forma simples e rápida.
Elas são especialmente úteis quando usadas em conjunto com as funções map
, filter
e reduce
, pois permitem aplicar operações de forma simples e eficiente sobre os elementos de um iterável.
É importante notar, no entanto, que elas são destinadas a serem usadas para operações simples e pequenas, e não para funções complexas que podem ser reutilizadas em outros lugares do código.
Agora que você já sabe o básico sobre funções lambda, experimente criar algumas em seus próprios projetos e veja como elas podem simplificar seu código!