Pessoal eu tenho essa lista:
lista = [['10616558', 0],
['2856466', 1],
['9715350', 2],
['9715350', 3],
['9715350', 4],
['10720706', 5]]
O primeiro elemento é uma string qualquer, e o segundo é um índice. Preciso fazer uma função que tire os elementos da lista que contém a mesma string, preservando o índice.
O output seria dessa forma:
>>> lista = removeigual(lista)
>>> lista
[['10616558', 0],
['2856466', 1],
['9715350', 2],
['10720706', 5]]
Eu tenho uma função que remove duplicações mas é somente para listas simples, mas não consegui adaptar para meu problema:
def removeDuplicates(listofElements):
uniqueList = []
for elem in listofElements:
if elem not in uniqueList:
uniqueList.append(elem)
return uniqueList
listas = [['10616558', 0], ['2856466', 1], ['9715350', 2], ['9715350', 3], ['9715350', 4], ['10720706', 5]]
def remove_repetido(lista):
lstStr = [ ]
lstIndex = [ ]
for x in range(len(listas)):
if not lista[x][0] in lstStr:
lstStr.append(listas[x][0])
lstIndex.append(listas.index(listas[x]))
lst = [[lstStr[x], lstIndex[x]] for x in range(len(lstStr))]
return lst
print(remove_repetido(listas))
Espero que ajude de alguma forma.
Para escrever sua resposta aqui, entre ou crie uma conta
Compartilhar