Considerando o código abaixo, qual deve ser o conteúdo final da lista
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)
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
e
pop(2) retira o elemento no índice 2 (“Computação”) e o retorna em y. Ficamos comx = ["Engenharia", "eComp"]e
y = "Computação".Passo 5
Com
x.append("UPE-POLI")
acrescentamos “UPE-POLI” ao final de
x, obtendox = ["Engenharia", "eComp", "UPE-POLI"].Passo 6
Quando executamos
x.remove("Computação")
o método
Se ignorarmos esse erro (ou considerarmos o estado imediatamente antes do
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’]