Pular para o conteúdo principal

Questão de Programação — Python — Quadrix 2025

ProgramaçãoPython
Código
qg603279
Banca
Quadrix
Órgão
SEDF
Ano
2025
Nível
Superior
Cargo
Professor de Educação Básica: Eletrônica
A respeito dos tópicos de computação, nas linguagens de programação e nos sistemas operacionais Linux, julgue o item a seguir.Em Python, a expressão (1, 2)[1:] resultará em um erro TypeError, porque tuplas não suportam fatiamento.
  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”.

Fatiamento de tuplas em Python

Gabarito: ERRADO. Em Python, tuplas são sequências imutáveis, mas suportam fatiamento (slicing) normalmente. A expressão (1, 2)[1:] retorna a tupla (2,), sem qualquer erro. O erro TypeError ocorreria apenas se houvesse tentativa de atribuição a um elemento da tupla, como (1, 2)[0] = 5 — aí sim a mensagem seria TypeError: 'tuple' object does not support item assignment. A afirmação do enunciado confunde imutabilidade (não poder alterar elementos) com incapacidade de fatiar (que é uma operação de leitura, permitida).

O fatiamento é uma operação fundamental em Python, aplicável a todas as sequências — strings, listas e tuplas. A sintaxe sequencia[inicio:fim:passo] cria uma nova sequência com os elementos selecionados, sem modificar a original. No caso de tuplas, o resultado do fatiamento é sempre uma nova tupla. Por exemplo:

tupla = (1, 2, 3, 4, 5)
print(tupla[1:])    # (2, 3, 4, 5)
print(tupla[:3])    # (1, 2, 3)
print(tupla[::2])   # (1, 3, 5)
print(tupla[::-1])  # (5, 4, 3, 2, 1)

Todos esses comandos funcionam perfeitamente. A imutabilidade da tupla significa apenas que não se pode alterar, adicionar ou remover elementos após a criação — mas ler, fatiar, concatenar e iterar são operações perfeitamente válidas. O erro TypeError citado no enunciado é típico de tentativas de atribuição a um índice, como tupla[0] = 10, que gera a mensagem TypeError: 'tuple' object does not support item assignment.

A confusão entre "imutável" e "não suporta fatiamento" é uma pegadinha clássica em provas de Python. O candidato que sabe que tuplas são imutáveis pode erroneamente concluir que elas não podem ser fatiadas. Na verdade, a imutabilidade diz respeito à modificação dos elementos, não à leitura deles. O fatiamento é uma operação de leitura que cria uma nova sequência, portanto é totalmente compatível com a natureza imutável das tuplas.

Para fixar: imutabilidade ≠ não suporta fatiamento. Tuplas suportam todas as operações de leitura de sequências (indexação, fatiamento, concatenação, repetição, in, len(), iteração). O que não podem é ser modificadas in-place. Essa distinção é exatamente o que a banca explora nesta questão.

  1. 1Tupla é sequência imutável
  2. 2Fatiamento é leitura (permitido)
  3. 3Retorna nova tupla
  4. 4TypeError só em atribuição
LEVEL · soulevel.com.br

Item — ❌ ERRADO ⟵ GABARITO

A afirmação de que (1, 2)[1:] resultará em TypeError porque tuplas não suportam fatiamento é falsa. Tuplas suportam fatiamento normalmente. A expressão (1, 2)[1:] retorna a tupla (2,) — um fatiamento válido que extrai os elementos do índice 1 até o final. O erro TypeError só ocorreria em tentativas de atribuição a elementos da tupla, como (1, 2)[0] = 5, que gera TypeError: 'tuple' object does not support item assignment. A banca trocou o conceito de imutabilidade (não pode modificar) por incapacidade de fatiar (que é uma operação de leitura, permitida).

NÃO CAIA NESSA!

Para não cair nessa pegadinha, lembre-se: imutável significa que não se pode alterar os elementos, mas todas as operações de leitura (indexação, fatiamento, concatenação, iteração) são permitidas. Se a alternativa disser que tuplas não suportam fatiamento, está errada. O TypeError de tupla só aparece em tentativas de atribuição (tupla[0] = x).

Gabarito: ERRADO — a afirmação está incorreta, pois tuplas suportam fatiamento.

Link permanente: /questoes/qg603279