Pular para o conteúdo principal

Questão de Programação — Linguagens de programação — CESPE / CEBRASPE 2025

ProgramaçãoLinguagens de programação
Código
ce194800
Banca
CESPE / CEBRASPE
Órgão
ANM
Ano
2025
Nível
Superior
Cargo
Especialista em Recursos Minerais - Especialidade: Geologia, Geografia, Geofísica, Engenharia de Minas, Agrônoma, Florestal, Civil, Ambiental, Arquitetura ou Tecnologia da Informação
Imagem da questão
Julgue o item a seguir, relativo ao código Python precedente.O método pop() pode ser usado para remover um elemento de numeros, caso essa variável seja uma tupla e seja especificado o índice correto.
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoE — Errado

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Python: métodos de listas e tuplas

Gabarito: letra E (ERRADO). O método pop() é um método exclusivo de listas em Python — tuplas são imutáveis e não possuem esse método. A afirmação de que pop() poderia ser usado em uma tupla, mesmo especificando o índice correto, está incorreta, pois tuplas não suportam remoção de elementos.

O código apresentado no texto-base demonstra o uso de pop() em uma lista: numeros = [10, 20, 30, 40], depois numeros.append(50), numeros.insert(2, 25) e, por fim, removido = numeros.pop(). Esse último comando remove e retorna o último elemento da lista (50). A questão, porém, pergunta se o mesmo método poderia ser usado caso numeros fosse uma tupla.

Tuplas em Python são estruturas de dados imutáveis, ou seja, após sua criação, não é possível adicionar, remover ou alterar elementos. Elas são definidas com parênteses, como coordenadas = (3, 5) no texto-base. Diferentemente das listas, que possuem métodos como append(), insert(), pop() e remove(), as tuplas não possuem nenhum método que modifique seu conteúdo. Tentar chamar pop() em uma tupla resultaria em um erro AttributeError: 'tuple' object has no attribute 'pop'.

A confusão que a banca explora aqui é a semelhança entre listas e tuplas: ambas são sequências ordenadas e indexáveis, mas a mutabilidade é o critério que as separa. Enquanto listas são mutáveis (podem ser alteradas), tuplas são imutáveis. Essa distinção é fundamental e frequentemente cobrada em questões de Python.

NÃO CAIA NESSA!

A banca tenta induzir o candidato a pensar que, por serem estruturas semelhantes, tuplas também teriam métodos de modificação como pop(). A pegadinha está em ignorar a imutabilidade das tuplas — um conceito central que diferencia tuplas de listas. Lembre-se: tuplas não têm append(), insert(), pop(), remove() ou qualquer método que altere seu conteúdo.

Estruturas de dados em Python
  • 1Listas
    • Mutáveis
    • Métodos de modificação
      • append()
      • insert()
      • pop()
      • remove()
  • 2Tuplas
    • Imutáveis
    • Sem métodos de modificação
      • pop()
      • append()
      • insert()
LEVEL · soulevel.com.br

Item — ❌ ERRADO

A afirmação está incorreta porque o método pop() não existe para tuplas em Python. Tuplas são imutáveis por definição, e qualquer tentativa de usar pop() (ou outros métodos de modificação) resultará em erro. O texto-base mostra pop() sendo usado corretamente em uma lista (numeros.pop()), mas isso não se aplica a tuplas. A imutabilidade é a característica que impede a remoção de elementos de uma tupla, independentemente do índice especificado.

Gabarito: letra E (ERRADO).

Link permanente: /questoes/ce194800