[1,5] Considerando o código abaixo, qual deve ser o conteúdo final da lista x após sua execução?
x = ["Engenharia", "da", "Computação"]
x[1] = "eComp"
y = x.pop(2)
x.append("UPE-POLI")
x.remove("Computação")
print (x)

Passo 1

O enunciado trata de operações básicas em listas Python: atribuição por índice, remoção com pop, inserção com append e remoção por valor com remove. Vamos acompanhar passo a passo o que acontece com a lista x.

Passo 2

Começamos com
x = ["Engenharia", "da", "Computação"]
ou seja,
x = ["Engenharia", "da", "Computação"].

Passo 3

Fazendo
x[1] = "eComp"
substituímos o elemento de índice 1 (“da”) por “eComp”. Agora
x = ["Engenharia", "eComp", "Computação"].

Passo 4

Em
y = x.pop(2)
o método pop(2) retira o elemento no índice 2 (“Computação”) e o retorna em y. Ficamos com
x = ["Engenharia", "eComp"]
e y = "Computação".

Passo 5

Com
x.append("UPE-POLI")
acrescentamos “UPE-POLI” ao final de x, obtendo
x = ["Engenharia", "eComp", "UPE-POLI"].

Passo 6

Quando executamos
x.remove("Computação")
o método remove busca o valor "Computação" para removê-lo. Como ele já havia sido retirado no pop, não há mais esse valor em x e o Python levanta um ValueError.
Se ignorarmos esse erro (ou considerarmos o estado imediatamente antes do remove), a lista permanece
["Engenharia", "eComp", "UPE-POLI"].

Resposta

[‘Engenharia’, ‘eComp’, ‘UPE-POLI’]

Exercícios relacionados