PythonListasintermediario

Remover duplicatas

Em cenários reais, como processamento de logs ou listas de IDs de usuários, você frequentemente precisa eliminar duplicatas sem bagunçar a ordem original. Saber fazer isso manualmente com um loop te dá controle fino, sem depender de estruturas que podem alterar a sequência.

O PROBLEMA

Dada [1,2,2,3,4,4,4,5], crie nova lista sem duplicatas mantendo ordem.

EXEMPLO

Sem duplicatas: [1,2,3,4,5]

SOBRE O CONCEITO

A ideia é percorrer a lista original com um for e, para cada elemento, verificar se ele já está na nova lista usando if item not in nova_lista. Só então adicionamos com append. Isso garante que a primeira aparição de cada valor seja mantida na ordem em que aparece. O erro comum é usar set(), que remove duplicatas mas não preserva a ordem de inserção de forma confiável — em Python, set não tem ordem garantida, então a lista resultante pode sair bagunçada. Ao evitar set e usar o if not in, você mantém o controle sobre a ordenação.

RESOLUÇÃO

Mais exercícios de Listas

PYL002B · BásicoAdicionar elementosPYL005B · BásicoRemover elementosPYL006B · BásicoVerificar elementoPYL008B · BásicoFatiamento
Ver todos os exercícios de Python