ZeD ha scritto: > Pietro Battiston wrote: > >>> Grazie devo approfondire questa SequenceMatcher, non la conoscevo. >> Se vuoi evitare una libreria a costo di introdurre dello schifo, è pur >> sempre una riga :-) >> >>>>> (lambda x, y : len([x[i] for i in range(min(len(x),len(y))) if x[i] >> == y[i]])) (list('ciao'), list('cibo')) >> 3 > > prova con "essere" e "sere" (chiariamo, dipende tutto da quello che l'OP > deve farci con l'informazione cercata) > > btw questa versione è più compatta (anche se non meno schifosa :D) > > In [38]: f = lambda s1,s2: sum(1 for c1,c2 in zip(s1, s2) if c1 == c2)
Per stare al gioco: puoi anche sommare tra loro i bool: In [1]: def f(s1, s2): ...: return sum(c1 == c2 for c1, c2 in zip(s1, s2)) ...: In [2]: f('ciao', 'cibo') Out[2]: 3 -- Daniele Varrazzo - Develer S.r.l. http://www.develer.com _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python