La oss si jeg har en liste over noen strenger, og det er visse strenger der som veldig, veldig like. Og jeg ønsker å slette disse nesten duplikater . For det, kom jeg opp med følgende kode:
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)
Som synes å fungere fint, men jeg har egentlig ikke liker nestede løkker og også denne count
løsningen ser stygg. Men sannsynligvis er det mulig å skrive det ned i en mer Pytonske måte? Ved hjelp av generatorer, kan være?
Ville være takknemlig for et hint, takk :)