Observe os seguintes comandos em Python:
Ao término da execução da última linha, o programa deverá imprimir
Passo 1
Fala aí! Essa questão quer testar nossos conhecimentos sobre os operadores em listas. Mas antes, vou te falar uma parada pra você não ficar perdido no que tá acontecendo ali na penúltima linha. É possível definir duas variáveis diferentes na mesma linha usando vírgulas. Olha:
Viu?! As atribuições vão ser feitas respectivamente. Agora, vamos analisar o que tá acontecendo no programa, passo a passo.
Passo 2
Se liga que no programa só tem uma função print(). O enunciado pergunta o que será impresso depois da execução do programa, e só tem um print(). Então, a gente só precisa analisar o que esse print() está imprimindo, ok?! Beleza! Na primeira linha, uma variável de lista foi criada.
Depois, as variáveis i = 1 e j = 2 foram definidas. Mas nosso print() exibe a própria lista x, então o valor de i e j por si só não são importantes pra gente. Agora, a próxima linha que complica um pouco mais a parada.
A pegadinha aqui é que a variável i vai ser atualizada e depois x[i] vai ser atualizado. Quando a gente declara variáveis assim, na mesma linha, as atribuições são feitas uma de cada vez da esquerda pra direita. Isso significa que no x[i] ali, o i não é o i que foi definido antes em i = 1, mas sim o i definido na mesma linha, i = j * 2 - x[j] ** 2.
Na sequência, x[i] = 0. Então, x[3] = 0, sacou?!
Antes dessa linha, as variáveis são:
Depois dela:
Como o print() exibe a variável x, então a resposta é a lista [2, 9, 1, 0].
Resposta
[2, 9, 1, 0]