Alternativa E - ['e', 'c', 'a']
Análise da Questão
A questão aborda o uso de fatias (slicing) em listas do Python, especificamente quando se utiliza um passo negativo para percorrer a estrutura de trás para frente.
Conceito Chave: Slicing lista[início:fim:passo]
No comando lista[-2::-2]:
- Início (
-2): Define onde começa a extração. Um índice negativo conta a partir do final da lista. - Fim (omitido): Quando omitido com um passo negativo, significa "até o início da lista".
- Passo (
-2): Define que devemos pular 2 posições para trás a cada iteração.
Mapeamento da Lista
Para facilitar a visualização, vamos alinhar os índices positivos e negativos da lista dada:
| Letra | 'a' | 'b' | 'c' | 'd' | 'e' | 'f' |
| :---: | :-: | :-: | :-: | :-: | :-: | :-: |
| Índices Positivos | 0 | 1 | 2 | 3 | 4 | 5 |
| Índices Negativos | -6 | -5 | -4 | -3 | -2 | -1 |
Passo a Passo da Execução
A instrução é lista[-2::-2]. Vamos simular o loop interno:
- Primeiro elemento: Começamos no índice -2, que corresponde ao valor 'e'.
- Segundo elemento: Adicionamos o passo (-2) ao índice atual.
- Novo índice: -2 + (-2) = -4.
- O valor no índice -4 é 'c'.
- Terceiro elemento: Novamente somamos o passo.
- Novo índice: -4 + (-2) = -6.
- O valor no índice -6 é 'a'.
- Próximo índice: -6 + (-2) = -8. Este valor está fora dos limites da lista (que termina em -6), então a iteração encerra.
Portanto, a nova lista resultante contém os elementos na ordem: 'e', 'c', 'a'.
Conclusão
A sequência gerada é ['e', 'c', 'a'], o que corresponde exatamente à alternativa E.