Fácil Python

Removendo duplicatas

Enunciado

Dada a lista numeros = [1, 2, 2, 3, 4, 4, 5], crie um conjunto com os valores únicos e imprima-o ordenado.

Requisitos

  • Use set() para remover duplicatas.
  • Imprima os elementos em ordem crescente usando sorted().
  • A saída deve ser uma lista ordenada dos números únicos.

Código inicial

numeros = [1, 2, 2, 3, 4, 4, 5]
# Seu código aqui

Saída esperada

[1, 2, 3, 4, 5]
Ver dica

Converta a lista para set, depois use sorted() para obter uma lista ordenada.

Mostrar solução
numeros = [1, 2, 2, 3, 4, 4, 5]
unicos = set(numeros)          # remove duplicatas
ordenados = sorted(unicos)     # converte para lista ordenada
print(ordenados)

Passo a passo

  1. Criamos a lista numeros com valores repetidos.
  2. set(numeros) cria um conjunto, eliminando automaticamente os duplicatas.
  3. sorted(unicos) retorna uma nova lista com os elementos do conjunto em ordem crescente.
  4. print(ordenados) exibe [1, 2, 3, 4, 5].

Por que funciona

Conjuntos armazenam apenas elementos únicos. Ao converter a lista para set, as repetições são descartadas. Como conjuntos não mantêm ordem, usamos sorted() para obter uma sequência ordenada.

Erros comuns

  • Esquecer de converter para lista ordenada: print(set(numeros)) imprime {1, 2, 3, 4, 5} (com chaves) e a ordem pode variar.
  • Tentar indexar o conjunto: unicos[0] gera TypeError: 'set' object is not subscriptable.
  • Usar sorted diretamente no set sem atribuir: sorted(unicos) não altera o conjunto; é preciso usar o retorno.

Outra forma de resolver

Usar compreensão de conjunto e depois ordenar:

unicos = {n for n in numeros}
print(sorted(unicos))

É preferível quando já se quer filtrar durante a criação.

Saída esperada

[1, 2, 3, 4, 5]