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
ce194798
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 operador | pode ser utilizado para realizar a união de dois conjuntos, retornando um novo conjunto com os elementos combinados sem duplicatas.
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoC — Certo

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”.

Operadores de conjuntos em Python: união com |

Gabarito: letra C (CERTO). Em Python, o operador | aplicado a dois conjuntos (set) realiza a operação de união, retornando um novo conjunto contendo todos os elementos de ambos, sem duplicatas. O código do enunciado ilustra exatamente isso com uniao = pares | impares, e a afirmação está correta.

O que está em jogo aqui é o comportamento dos operadores de conjuntos em Python. Diferentemente de outras linguagens, Python oferece operadores dedicados para as operações clássicas da teoria de conjuntos: | para união, & para interseção, - para diferença e ^ para diferença simétrica. Esses operadores funcionam exclusivamente com o tipo set (e também com frozenset), e o resultado é sempre um novo conjunto, sem modificar os originais.

No código apresentado, temos dois conjuntos: pares = {2, 4, 6, 8} e impares = {1, 3, 5, 7}. A linha uniao = pares | impares cria um novo conjunto com todos os elementos de ambos: {1, 2, 3, 4, 5, 6, 7, 8}. Como conjuntos não permitem elementos repetidos, qualquer duplicata seria automaticamente eliminada. O operador | é, portanto, o equivalente direto do método .union(), que também retorna um novo conjunto.

É importante notar que o operador | não se confunde com o operador lógico or. Enquanto | é um operador bit a bit (bitwise OR) para números inteiros e um operador de união para conjuntos, or é um operador lógico que avalia a veracidade dos operandos. No contexto de conjuntos, | tem um significado específico e bem definido, que é exatamente o que a questão descreve.

A pegadinha que a banca poderia explorar aqui é a confusão entre o operador | (união) e o operador & (interseção). Enquanto | combina todos os elementos, & retorna apenas os elementos que estão presentes em ambos os conjuntos. No código, interseccao = pares & impares resultaria em um conjunto vazio, pois não há elementos comuns entre pares e ímpares. A distinção entre esses dois operadores é fundamental para resolver questões sobre conjuntos em Python.

Guarde essa distinção: | é união (tudo junto), & é interseção (só o que está nos dois). É exatamente nessa fronteira que as questões sobre operadores de conjuntos costumam se dividir.

1| (união)
Todos os elementos combinados
Sem duplicatas
Equivale a .union()
2& (interseção)
Só elementos em ambos
Equivale a .intersection()
3- (diferença)
Elementos só no primeiro
Equivale a .difference()
4^ (diferença simétrica)
Elementos em um ou outro, não em ambos
Equivale a .symmetric_difference()
Operadores de conjuntos (Python)
LEVELsoulevel.com.br
Operadores de conjuntos (Python): | (união) (Todos os elementos combinados, Sem duplicatas, Equivale a .union()); & (interseção) (Só elementos em ambos, Equivale a .intersection()); - (diferença) (Elementos só no primeiro, Equivale a .difference()); ^ (diferença simétrica) (Elementos em um ou outro, não em ambos, Equivale a .symmetric_difference())

Alternativa C — ✅ CERTOGABARITO

A afirmação está correta. O operador | em Python, quando aplicado a conjuntos, realiza a união, retornando um novo conjunto com todos os elementos combinados, sem duplicatas. Isso é confirmado pelo próprio código do enunciado, que usa uniao = pares | impares para combinar os dois conjuntos. O resultado seria {1, 2, 3, 4, 5, 6, 7, 8}, um novo conjunto com todos os elementos, sem repetições.

PEGA ESSA DICA!

Para fixar, lembre-se da correspondência entre operadores e métodos em Python: | equivale a .union(), & equivale a .intersection(), - equivale a .difference() e ^ equivale a .symmetric_difference(). Se a questão perguntar sobre união, procure pelo | ou pelo método .union().

Gabarito: letra C (CERTO).

Link permanente: /questoes/ce194798