As funções lambda em Python são uma ferramenta poderosa e concisa para criar funções anônimas, ou seja, funções sem um nome definido. Elas são úteis em muitos contextos, especialmente quando trabalhamos com funções que exigem outra função como argumento, como é o caso das funções map
, filter
e sorted
. Neste tutorial, vamos explorar o que são funções lambda, como utilizá-las e em quais situações elas podem ser particularmente úteis.
O que são Funções Lambda?
As funções lambda são uma forma de criar funções em uma única linha de código. Elas são definidas pela palavra-chave lambda
, seguida pelos parâmetros da função, dois pontos e a expressão que será retornada pela função. A sintaxe básica de uma função lambda é a seguinte:
lambda parâmetros: expressão
Vamos ver um exemplo simples de uma função lambda que eleva um número ao quadrado:
quadrado = lambda x: x ** 2
print(quadrado(5)) # Saída: 25
TestarQuando usar Funções Lambda?
As funções lambda são particularmente úteis quando precisamos de uma função simples por um curto período de tempo e não queremos definir uma função completa usando def
. Elas são comumente usadas com funções como map
, filter
e sorted
, que aceitam uma função como argumento.
Exemplo com map
A função map
aplica uma função a todos os itens de uma lista. Veja como podemos usar uma função lambda com map
para elevar ao quadrado todos os números de uma lista:
numeros = [1, 2, 3, 4, 5]
quadrados = map(lambda x: x ** 2, numeros)
print(list(quadrados)) # Saída: [1, 4, 9, 16, 25]
TestarExemplo com filter
A função filter
filtra itens de uma lista que não atendem a uma condição. Aqui está um exemplo de como usar uma função lambda com filter
para obter apenas os números pares de uma lista:
numeros = [1, 2, 3, 4, 5, 6]
pares = filter(lambda x: x % 2 == 0, numeros)
print(list(pares)) # Saída: [2, 4, 6]
TestarExemplo com sorted
A função sorted
ordena os itens de uma lista. Podemos usar uma função lambda para definir a lógica de ordenação:
lista = ['banana', 'abacate', 'uva', 'caqui']
lista_ordenada = sorted(lista, key=lambda x: len(x))
print(lista_ordenada) # Saída: ['uva', 'caqui', 'banana', 'abacate']
TestarVantagens e Desvantagens
As funções lambda em Python têm suas vantagens, como a concisão e a facilidade de leitura quando usadas em operações simples. No entanto, elas também têm desvantagens. Por exemplo, podem ser menos legíveis quando a lógica é complexa e, por serem anônimas, não podem ser chamadas em outro lugar no código.
Conclusão
As funções lambda em Python são essenciais e oferecem uma maneira elegante de escrever funções pequenas e descartáveis. Elas são especialmente úteis em combinação com funções que requerem outra função como argumento. Com este tutorial, você deve ter uma boa compreensão de como e quando usar funções lambda em seus projetos em Python. Continue praticando e você logo se tornará proficiente em sua aplicação!
Cursos de programação gratuitos com certificado
Aprenda a programar e desenvolva soluções para o seu trabalho com Python para alcançar novas oportunidades profissionais. Aqui na Asimov você encontra:
- Conteúdos gratuitos
- Projetos práticos
- Certificados
- +20 mil alunos e comunidade exclusiva
- Materiais didáticos e download de código
Comentários