O Que é Função Lambda no Python (Com Exemplos)

Atualizado em: 13/11/2025
Tempo de leitura: 3 minutos
Logo lambda usado no Half-Life

As funções lambda são uma ferramenta poderosa e elegante do Python. Elas permitem criar pequenas funções de forma rápida e limpa. Se você está começando a programar ou quer melhorar suas habilidades, este artigo vai ajudar você a dominar esse conceito fundamental.

Imagine poder escrever uma função inteira em apenas uma linha. Parece mágica, mas é exatamente isso que as funções lambda fazem. Elas tornam seu código mais conciso e expressivo, especialmente quando você precisa de uma função simples para usar apenas uma vez.

O Que São Funções Lambda?

Uma função lambda é uma forma compacta de escrever funções em Python. Também conhecidas como funções anônimas, elas não precisam de um nome definido. Você pode criá-las e usá-las no mesmo momento, sem cerimônia.

O vídeo do canal Código Fonte TV explica melhor isso abaixo:

YouTube player

Pense nas funções lambda como pequenos assistentes temporários. Você os chama quando precisa, eles fazem o trabalho e depois desaparecem. São perfeitas para tarefas simples que não justificam criar uma função completa.

A sintaxe básica é surpreendentemente simples. Você escreve a palavra-chave lambda, seguida dos parâmetros, dois pontos e a expressão que será retornada. Tudo isso em uma única linha limpa e direta.

Diferença Entre Funções Normais e Lambda

As funções tradicionais em Python usam a palavra-chave def. Elas têm um nome, podem ter múltiplas linhas e usar declarações como return. São ideais para lógica complexa e reutilização frequente.

As funções lambda, por outro lado, são minimalistas. Elas podem conter apenas uma expressão e retornam automaticamente o resultado. Não podem incluir declarações como print, import ou raise.

Vamos ver um exemplo prático dessa diferença:

Python

# Função tradicional
def somar(x, y):
    return x + y

# Função lambda equivalente
somar_lambda = lambda x, y: x + y

print("Soma tradicional:", somar(4, 5))
print("Soma lambda:", somar_lambda(4, 5))
Pronto para executar

Ambas fazem a mesma coisa, mas a versão lambda é muito mais concisa. A escolha entre uma e outra depende do contexto e da complexidade da tarefa.

O vídeo abaixo do canal Hashtag Programação explica como usar funções lambda no Python de forma prática:

YouTube player

Sintaxe e Estrutura Básica

A sintaxe das funções lambda segue um padrão consistente e previsível. Sempre começa com a palavra-chave lambda, seguida pelos argumentos e uma expressão.

A estrutura geral é: lambda argumentos: expressão

Os argumentos funcionam como em qualquer função. Você pode ter zero, um ou vários argumentos. A expressão é o que a função calcula e retorna automaticamente.

Exemplos de Sintaxe Variada

Vamos explorar diferentes formas de usar a sintaxe lambda:

Python

# Sem argumentos
cumprimento = lambda: "Olá, mundo!"

# Um argumento
quadrado = lambda x: x ** 2

# Dois argumentos
multiplicar = lambda x, y: x * y

# Múltiplos argumentos
media = lambda a, b, c: (a + b + c) / 3

# Exemplos de uso:
print(cumprimento())  # Saída: Olá, mundo!
print(quadrado(5))    # Saída: 25
print(multiplicar(3, 4))  # Saída: 12
print(media(10, 20, 30))  # Saída: 20.0
Pronto para executar

Note como cada exemplo mantém a simplicidade. A expressão após os dois pontos é sempre única e direta. Isso é uma limitação intencional que mantém as lambdas focadas e legíveis.

Quando Usar Funções Lambda

As funções lambda brilham em situações específicas. Elas são ideais quando você precisa de uma função simples por um curto período. Especialmente úteis como argumentos para outras funções.

Um cenário comum é com funções de alta ordem como map(), filter() e sort(). Estas funções esperam receber outra função como argumento. Uma lambda pode ser perfeita aqui.

Casos de Uso Ideais

Ordenação personalizada é um exemplo clássico. Imagine que você tem uma lista de tuplas representando pessoas e suas idades:

Python

pessoas = [("Ana", 25), ("Bruno", 30), ("Carlos", 20)]

# Ordenar por idade usando lambda
pessoas_ordenadas = sorted(pessoas, key=lambda x: x[1])
print(pessoas_ordenadas)
Pronto para executar

Filtragem de dados também se beneficia enormemente das lambdas:

Python

numeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

# Filtrar apenas números pares
pares = list(filter(lambda x: x % 2 == 0, numeros))
print(pares)
Pronto para executar

Transformação de dados com map() fica elegante com lambdas:

Python

celsius = [0, 20, 30, 40]

# Converter para Fahrenheit
fahrenheit = list(map(lambda c: (c * 9/5) + 32, celsius))
print(fahrenheit) 
Pronto para executar

Conclusão e Próximos Passos

As funções lambda em Python são ferramentas valiosas quando usadas corretamente. Elas tornam o código mais expressivo e conciso para operações simples. Dominar seu uso adequado diferencia programadores iniciantes de desenvolvedores experientes.

Lembre-se das regras principais: mantenha lambdas simples, use-as para operações temporárias e prefira funções nomeadas para lógica complexa. A prática constante desenvolverá sua intuição sobre quando cada abordagem é mais apropriada.

Perguntas Frequentes (FAQ)

1. O que é uma função lambda em Python?
É uma função pequena escrita em uma única linha usando a palavra chave lambda.

2. Para que serve uma função lambda?
Serve para criar funções rápidas sem precisar definir uma função completa com def.

3. Lambda é mais rápido que funções normais?
Não. A diferença de desempenho é mínima e não deve influenciar a escolha.

4. Posso usar lambda em qualquer lugar?
Sim, mas é ideal usar em casos simples para manter o código claro.

5. Funções lambda podem ter vários comandos?
Não. Lambdas aceitam apenas uma expressão.

6. Posso nomear uma função lambda?
Sim, mas não é recomendado. É melhor usar def quando for nomear.

7. Onde lambda é mais usada na prática?
Em funções como map, filter, sorted e para operações rápidas.

8. Lambda pode ter argumentos padrão?
Sim. Você pode definir valores padrão como faria em uma função comum.

9. Lambda pode acessar variáveis externas?
Sim. Ela consegue acessar variáveis do escopo onde foi criada.

10. É bom usar lambda em projetos grandes?
Sim, mas com moderação. Evite quando o código deixar de ser claro.

11. Lambda aceita argumentos ilimitados?
Aceita vários argumentos, mas continue usando apenas uma expressão.

12. Posso retornar listas ou dicionários em uma lambda?
Sim. Qualquer expressão válida pode ser retornada.

Compartilhe:

Facebook
WhatsApp
Twitter
LinkedIn

Conteúdo do artigo

    Artigos relacionados

    Fundamentos
    Foto do Leandro Hirt

    Por que meu loop nunca termina? Descubra a solução

    Você acabou de escrever um script incrível, aperta o botão de executar e, de repente, o cursor fica piscando infinitamente

    Ler mais

    Tempo de leitura: 9 minutos
    01/04/2026
    Fundamentos
    Foto do Leandro Hirt

    Como baixar vídeos do YouTube com Python em 5 minutos

    Você já se perguntou como transformar horas de conteúdo do YouTube em arquivos locais para assistir offline? Seja para estudar

    Ler mais

    Tempo de leitura: 10 minutos
    22/03/2026
    Fundamentos
    Foto do Leandro Hirt

    == vs is em Python: descubra o que realmente acontece

    Você já se deparou com uma situação em que dois objetos parecem idênticos, mas o Python insiste que eles são

    Ler mais

    Tempo de leitura: 9 minutos
    21/03/2026
    Fundamentos
    Foto do Leandro Hirt

    Como criar um menu interativo no terminal com Python

    Criar uma interface eficiente para o usuário não exige sempre o desenvolvimento de janelas complexas ou botões coloridos. Muitas vezes,

    Ler mais

    Tempo de leitura: 10 minutos
    20/03/2026
    Fundamentos
    Foto do Leandro Hirt

    Descubra como usar o operador ternário no Python

    O operador ternário no Python é uma daquelas ferramentas que, uma vez dominadas, mudam completamente a forma como você escreve

    Ler mais

    Tempo de leitura: 10 minutos
    18/03/2026
    Fundamentos
    Foto do Leandro Hirt

    Descubra o match-case: como usar pattern matching no Python

    O desenvolvimento de software com a linguagem Python sempre foi pautado pela legibilidade e simplicidade. Com o lançamento da versão

    Ler mais

    Tempo de leitura: 10 minutos
    14/03/2026