Como remover itens repetidos de listas no Python

Aprenda a remover itens repetidos de listas no Python.

Instância

Remova qualquer item repetido da lista:

mylist = ["a", "b", "a", "c", "c"]
mylist = list(dict.fromkeys(mylist))
print(mylist)

Executar Instância

Explicação de exemplo

Primeiro, temos uma lista com itens repetidos:

Lista com itens repetidos

mylist = ["a", "b", "a", "c", "c"]
mylist = list(dict.fromkeys(mylist))
print(mylist)

Crie um dicionário usando itens de lista como chaves. Isso removerá automaticamente qualquer item repetido, pois o dicionário não pode ter chaves repetidas.

Criar Dicionário

mylist = ["a", "b", "a", "c", "c"]
mylist = list( dict.fromkeys(mylist) )
print(mylist)

Em seguida, converta o dicionário de volta para uma lista:

Converta para Lista

mylist = ["a", "b", "a", "c", "c"]
mylist = list(dict.fromkeys(mylist)) 
print(mylist)

Agora temos uma lista sem repetições, que mantém a mesma ordem que a lista original.

Imprimir a lista para demonstrar o resultado:

Imprimir Lista

mylist = ["a", "b", "a", "c", "c"]
mylist = list(dict.fromkeys(mylist))
print(mylist)

Criar Função

Se você deseja ter uma função que possa enviar uma lista e que retorne itens sem repetição, você pode criar uma função e inserir o código do exemplo acima.

Instância

def my_function(x):
  return list(dict.fromkeys(x))
mylist = my_function(["a", "b", "a", "c", "c"])
print(mylist)

Executar Instância

Explicação de Exemplo

Crie uma função que aceita uma Lista como parâmetro.

Criar Função

def my_function(x): 
  return list(dict.fromkeys(x))
mylist = my_function(["a", "b", "a", "c", "c"])
print(mylist)

Use este item da Lista como chave para criar um dicionário.

Criar Dicionário

def my_function(x):
  return list( dict.fromkeys(x) )
mylist = my_function(["a", "b", "a", "c", "c"])
print(mylist)

Converter dicionário para lista:

Converter para Lista

def my_function(x):
  return list( dict.fromkeys(x) ) 
mylist = my_function(["a", "b", "a", "c", "c"])
print(mylist)

Retornar Lista:

Retornar Lista

def my_function(x):
  return list(dict.fromkeys(x))
mylist = my_function(["a", "b", "a", "c", "c"])
print(mylist)

Chamar a função usando uma lista como parâmetro:

Chamar Função

def my_function(x):
  return list(dict.fromkeys(x))
mylist = my_function(["a", "b", "a", "c", "c"])
print(mylist)

Imprimir Resultado:

Imprimir Resultado

def my_function(x):
  return list(dict.fromkeys(x))
mylist = my_function(["a", "b", "a", "c", "c"])
print(mylist)