Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Função Lambda

Boa noite...

Qual a vantagem de usar função lambda? A função lambda tem performance melhor?

Eu poderia fazer o mesmo código com uma função def. A função def seria reutilizavel no projeto. Teria mais linhas, mas seria mais clara e melhor documentada.

1 resposta
solução!

Olá Ceilton, tudo bem com você?

As funções lambda permitem a criação de funções anônimas, ou seja, funções sem nome. Elas são úteis em situações onde você precisa de uma pequena função para ser usada temporariamente.

Quais são as vantagens:

  • Sintaxe Concisa: Lambdas são compactas, ideais para funções simples e curtas.

    soma = lambda x, y: x + y
    print(soma(2, 3))  # Saída: 5
    
  • Uso Temporário: Boas para funções usadas uma única vez, como em filtros ou mapeamentos.

    lista = [1, 2, 3, 4]
    pares = list(filter(lambda x: x % 2 == 0, lista))
    print(pares)  # Saída: [2, 4]
    

E as desvantagens?

  • Legibilidade: Podem ser difíceis de ler e entender, especialmente para funções mais complexas.
  • Debugging: Mais difícil de depurar, pois são anônimas e não têm nome.
  • Funcionalidade Limitada: Só podem conter uma única expressão, sem declarações ou várias linhas de código.

A performance muda?

Quanto a performance não há diferença significativa em performance entre lambdas e funções definidas com def.

Resumo:

  • Use lambda para funções curtas e simples, em situações onde a função é usada temporariamente.
  • Use def para funções complexas, reutilizáveis e que precisam de documentação clara.

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!