Alternativa B
A questão apresenta um trecho de código em Python que utiliza a função filter() e uma expressão lambda para manipular uma lista de números.
Análise do Código
Para entender o resultado, vamos decompor o código linha por linha:
- Definição da Lista:
numeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
Esta variável contém todos os inteiros de 1 a 10. - Operação de Filtro:
numeros_pares = list(filter(lambda x: x % 2 == 0, numeros))
Aqui ocorre a lógica principal:
lambda x: x % 2 == 0: É uma função anônima que verifica se o resto da divisão de x por 2 é igual a zero. Se for zero, significa que o número é par.filter(...): A função percorre a lista numeros e mantém apenas os elementos para os quais a função lambda retornou True (verdadeiro).list(...): Converte o objeto gerador resultante do filtro de volta para uma lista comum.
Passo a Passo da Execução
O processo de filtragem seleciona apenas os números pares presentes na lista original:
- 1 $\rightarrow$ Ímpar (removido)
- 2 $\rightarrow$ Par (mantido)
- 3 $\rightarrow$ Ímpar (removido)
- 4 $\rightarrow$ Par (mantido)
- 5 $\rightarrow$ Ímpar (removido)
- 6 $\rightarrow$ Par (mantido)
- 7 $\rightarrow$ Ímpar (removido)
- 8 $\rightarrow$ Par (mantido)
- 9 $\rightarrow$ Ímpar (removido)
- 10 $\rightarrow$ Par (mantido)
Conclusão
Após a execução, a variável numeros_pares conterá exclusivamente os valores pares extraídos da lista original.
Portanto, o resultado correto é: [2, 4, 6, 8, 10], que corresponde à segunda alternativa.