Digamos que eu tenho uma lista de algumas cordas, e há certas seqüências lá que muito, muito similar. E eu quero excluir esses quase duplicados . Para isso, eu vim com o seguinte código:
from difflib import SequenceMatcher
l = ['Apple', 'Appel', 'Aple', 'Mango']
c = [l[0]]
for i in l:
count = 0
for j in c:
if SequenceMatcher(None, i, j).ratio() < 0.7:
count += 1
if count == len(c):
c.append(i)
Que parece funcionar bem, mas eu realmente não gosto de loops aninhados e também esta count
solução parece feio. Mas, provavelmente, é possível anotá-la de uma forma mais Pythonic? Usando geradores, pode ser?
Ficaria grato por uma dica, obrigado :)